diff --git a/gs/game/command_controller.go b/gs/game/command_controller.go
index a2423ba4..bddf7d5e 100644
--- a/gs/game/command_controller.go
+++ b/gs/game/command_controller.go
@@ -1,10 +1,9 @@
package game
import (
+ "hk4e/gs/model"
"strconv"
"strings"
-
- "hk4e/gs/model"
)
// HelpCommand 帮助命令
@@ -249,3 +248,12 @@ func (c *CommandManager) GiveCommand(cmd *CommandMessage) {
c.SendMessage(player, "已给予玩家 UID:%v, 所有内容。", target.PlayerID)
}
}
+
+// GcgCommand Gcg测试命令
+func (c *CommandManager) GcgCommand(cm *CommandMessage) {
+ player := cm.Executor.(*model.Player)
+
+ GAME_MANAGER.GCGStartChallenge(player)
+
+ c.SendMessage(player, "收到命令")
+}
diff --git a/gs/game/command_gm.go b/gs/game/command_gm.go
index 768fe3e7..657b2f08 100644
--- a/gs/game/command_gm.go
+++ b/gs/game/command_gm.go
@@ -13,11 +13,11 @@ func (c *CommandManager) GMTeleportPlayer(userId, sceneId uint32, posX, posY, po
logger.Error("player is nil, uid: %v", userId)
return
}
- GAME_MANAGER.TeleportPlayer(player, uint32(constant.EnterReasonConst.Gm), sceneId, &model.Vector{
+ GAME_MANAGER.TeleportPlayer(player, constant.EnterReasonConst.Gm, sceneId, &model.Vector{
X: posX,
Y: posY,
Z: posZ,
- })
+ }, 0)
}
// GMAddUserItem 给予玩家物品
diff --git a/gs/game/command_manager.go b/gs/game/command_manager.go
index 95f6aedf..3529ae7c 100644
--- a/gs/game/command_manager.go
+++ b/gs/game/command_manager.go
@@ -71,6 +71,7 @@ func (c *CommandManager) InitRouter() {
c.RegisterRouter(CommandPermNormal, c.OpCommand, "op")
c.RegisterRouter(CommandPermNormal, c.TeleportCommand, "teleport", "tp")
c.RegisterRouter(CommandPermNormal, c.GiveCommand, "give", "item")
+ c.RegisterRouter(CommandPermNormal, c.GcgCommand, "gcg")
}
// GM命令
{
diff --git a/gs/game/game_manager.go b/gs/game/game_manager.go
index 29b21a95..968eb454 100644
--- a/gs/game/game_manager.go
+++ b/gs/game/game_manager.go
@@ -26,6 +26,7 @@ var USER_MANAGER *UserManager = nil
var WORLD_MANAGER *WorldManager = nil
var TICK_MANAGER *TickManager = nil
var COMMAND_MANAGER *CommandManager = nil
+var GCG_MANAGER *GCGManager = nil
var MESSAGE_QUEUE *mq.MessageQueue
var SELF *model.Player
@@ -53,6 +54,7 @@ func NewGameManager(dao *dao.Dao, messageQueue *mq.MessageQueue, gsId uint32) (r
WORLD_MANAGER = NewWorldManager(r.snowflake)
TICK_MANAGER = NewTickManager()
COMMAND_MANAGER = NewCommandManager()
+ GCG_MANAGER = NewGCGManager()
r.run()
return r
}
diff --git a/gs/game/gcg_manager.go b/gs/game/gcg_manager.go
new file mode 100644
index 00000000..d7761483
--- /dev/null
+++ b/gs/game/gcg_manager.go
@@ -0,0 +1,105 @@
+package game
+
+import (
+ "hk4e/gs/model"
+)
+
+// ControllerType 操控者类型
+type ControllerType uint8
+
+const (
+ ControllerType_Player ControllerType = iota // 玩家
+ ControllerType_AI // AI
+)
+
+// GCGCardInfo 游戏对局内卡牌
+type GCGCardInfo struct {
+ cardId uint32 // 卡牌Id
+ guid uint32 // 唯一Id
+ faceType uint32 // 卡面类型
+ tagList []uint32 // Tag
+ tokenMap map[uint32]uint32 // Token
+ skillIdList []uint32 // 技能Id列表
+ skillLimitList []uint32 // 技能限制列表
+ isShow bool // 是否展示
+}
+
+// GCGController 操控者
+type GCGController struct {
+ controllerId uint32 // 操控者Id
+ cardMap map[uint32]*GCGCardInfo // 卡牌列表
+ controllerType ControllerType // 操控者的类型
+ player *model.Player
+ ai uint32 // 暂时不写
+}
+
+// GCGGame 游戏对局
+type GCGGame struct {
+ guid uint32 // 唯一Id
+ gameId uint32 // 游戏Id
+ round uint32 // 游戏回合数
+ serverSeqCounter uint32 // 请求序列生成计数器
+ controllerIdCounter uint32 // 操控者Id生成器
+ cardGuidCounter uint32 // 卡牌guid生成计数器
+ controllerMap map[uint32]*GCGController // 操控者列表 uint32 -> controllerId
+}
+
+// GCGManager 七圣召唤管理器
+type GCGManager struct {
+ gameMap map[uint32]*GCGGame // 游戏列表 uint32 -> guid
+ gameGuidCounter uint32 // 游戏guid生成计数器
+}
+
+func NewGCGManager() *GCGManager {
+ gcgManager := new(GCGManager)
+ gcgManager.gameMap = make(map[uint32]*GCGGame)
+ return gcgManager
+}
+
+// CreateGame 创建GCG游戏对局
+func (g *GCGManager) CreateGame(gameId uint32) *GCGGame {
+ g.gameGuidCounter++
+ game := &GCGGame{
+ guid: g.gameGuidCounter,
+ gameId: gameId,
+ round: 1,
+ controllerMap: make(map[uint32]*GCGController, 0),
+ }
+ // 记录游戏
+ g.gameMap[game.guid] = game
+ return game
+}
+
+// JoinGame 玩家加入GCG游戏
+func (g *GCGManager) JoinGame(game *GCGGame, player *model.Player) {
+ game.controllerIdCounter++
+ controller := &GCGController{
+ controllerId: game.controllerIdCounter,
+ cardMap: make(map[uint32]*GCGCardInfo, 0),
+ controllerType: ControllerType_Player,
+ player: player,
+ }
+ // 生成卡牌信息
+
+ // 记录操控者
+ game.controllerMap[game.controllerIdCounter] = controller
+}
+
+//// CreateGameCardInfo 生成操控者卡牌信息
+//func (g *GCGManager) CreateGameCardInfo(controller *GCGController, gcgDeck *model.GCGDeck) *GCGCardInfo {
+//
+//}
+
+// GetGameControllerByUserId 通过玩家Id获取GCGController对象
+func (g *GCGManager) GetGameControllerByUserId(game *GCGGame, userId uint32) *GCGController {
+ for _, controller := range game.controllerMap {
+ // 为nil说明该操控者不是玩家
+ if controller.player == nil {
+ return nil
+ }
+ if controller.player.PlayerID == userId {
+ return controller
+ }
+ }
+ return nil
+}
diff --git a/gs/game/route_manager.go b/gs/game/route_manager.go
index f76f3312..194b1a83 100644
--- a/gs/game/route_manager.go
+++ b/gs/game/route_manager.go
@@ -123,6 +123,8 @@ func (r *RouteManager) InitRoute() {
r.registerRouter(cmd.VehicleInteractReq, GAME_MANAGER.VehicleInteractReq)
r.registerRouter(cmd.SceneEntityDrownReq, GAME_MANAGER.SceneEntityDrownReq)
r.registerRouter(cmd.GetOnlinePlayerInfoReq, GAME_MANAGER.GetOnlinePlayerInfoReq)
+ r.registerRouter(cmd.GCGAskDuelReq, GAME_MANAGER.GCGAskDuelReq)
+ r.registerRouter(cmd.GCGInitFinishReq, GAME_MANAGER.GCGInitFinishReq)
}
func (r *RouteManager) RouteHandle(netMsg *mq.NetMsg) {
diff --git a/gs/game/user_gcg.go b/gs/game/user_gcg.go
new file mode 100644
index 00000000..8a8c8c25
--- /dev/null
+++ b/gs/game/user_gcg.go
@@ -0,0 +1,578 @@
+package game
+
+import (
+ pb "google.golang.org/protobuf/proto"
+ "hk4e/common/constant"
+ "hk4e/gs/model"
+ "hk4e/protocol/cmd"
+ "hk4e/protocol/proto"
+)
+
+func (g *GameManager) GCGLogin(player *model.Player) {
+ player.SceneId = 1076
+ player.Pos.X = 8.974
+ player.Pos.Y = 0
+ player.Pos.Z = 9.373
+ // GCG基础信息
+ g.SendMsg(cmd.GCGBasicDataNotify, player.PlayerID, player.ClientSeq, g.PacketGCGBasicDataNotify(player))
+ // GCG等级挑战解锁
+ g.SendMsg(cmd.GCGLevelChallengeNotify, player.PlayerID, player.ClientSeq, g.PacketGCGLevelChallengeNotify(player))
+ // GCG禁止的卡牌
+ g.SendMsg(cmd.GCGDSBanCardNotify, player.PlayerID, player.ClientSeq, g.PacketGCGDSBanCardNotify(player))
+ // GCG解锁或拥有的内容
+ g.SendMsg(cmd.GCGDSDataNotify, player.PlayerID, player.ClientSeq, g.PacketGCGDSDataNotify(player))
+ // GCG酒馆挑战数据
+ g.SendMsg(cmd.GCGTCTavernChallengeDataNotify, player.PlayerID, player.ClientSeq, g.PacketGCGTCTavernChallengeDataNotify(player))
+}
+
+// GCGTavernInit GCG酒馆初始化
+func (g *GameManager) GCGTavernInit(player *model.Player) {
+ //// GCG酒馆信息通知
+ //g.SendMsg(cmd.GCGTCTavernInfoNotify, player.PlayerID, player.ClientSeq, g.PacketGCGTCTavernInfoNotify(player))
+ //// GCG酒馆NPC信息通知
+ //g.SendMsg(cmd.GCGTavernNpcInfoNotify, player.PlayerID, player.ClientSeq, g.PacketGCGTavernNpcInfoNotify(player))
+ // 可能是包没发全导致卡进度条?
+ g.SendMsg(cmd.DungeonWayPointNotify, player.PlayerID, player.ClientSeq, &proto.DungeonWayPointNotify{})
+ g.SendMsg(cmd.DungeonDataNotify, player.PlayerID, player.ClientSeq, &proto.DungeonDataNotify{})
+ g.SendMsg(cmd.Unk3300_DGBNCDEIIFC, player.PlayerID, player.ClientSeq, &proto.Unk3300_DGBNCDEIIFC{})
+}
+
+// GCGStartChallenge GCG开始挑战
+func (g *GameManager) GCGStartChallenge(player *model.Player) {
+ // GCG开始游戏通知
+ //gcgStartChallengeByCheckRewardRsp := &proto.GCGStartChallengeByCheckRewardRsp{
+ // ExceededItemTypeList: make([]uint32, 0, 0),
+ // LevelId: 0,
+ // ExceededItemList: make([]uint32, 0, 0),
+ // LevelType: proto.GCGLevelType_GCG_LEVEL_TYPE_GUIDE_GROUP,
+ // ConfigId: 7066505,
+ // Retcode: 0,
+ //}
+ //g.SendMsg(cmd.GCGStartChallengeByCheckRewardRsp, player.PlayerID, player.ClientSeq, gcgStartChallengeByCheckRewardRsp)
+
+ // GCG游戏简要信息通知
+ GAME_MANAGER.SendMsg(cmd.GCGGameBriefDataNotify, player.PlayerID, player.ClientSeq, g.PacketGCGGameBriefDataNotify(player, proto.GCGGameBusinessType_GCG_GAME_BUSINESS_TYPE_GUIDE_GROUP, 30102))
+
+ // 玩家进入GCG界面
+ g.TeleportPlayer(player, constant.EnterReasonConst.DungeonEnter, 79999, new(model.Vector), 2162)
+}
+
+// GCGAskDuelReq GCG决斗请求
+func (g *GameManager) GCGAskDuelReq(player *model.Player, payloadMsg pb.Message) {
+ // 获取玩家所在的游戏
+ game, ok := GCG_MANAGER.gameMap[player.GCGCurGameGuid]
+ if !ok {
+ g.CommonRetError(cmd.GCGAskDuelRsp, player, &proto.GCGAskDuelRsp{}, proto.Retcode_RET_GCG_GAME_NOT_RUNNING)
+ return
+ }
+ // 计数器+1
+ game.serverSeqCounter++
+ // 获取玩家的操控者对象
+ gameController := GCG_MANAGER.GetGameControllerByUserId(game, player.PlayerID)
+ if gameController == nil {
+ g.CommonRetError(cmd.GCGAskDuelRsp, player, &proto.GCGAskDuelRsp{}, proto.Retcode_RET_GCG_NOT_IN_GCG_DUNGEON)
+ return
+ }
+ // PacketGCGAskDuelRsp
+ //gcgAskDuelRsp := &proto.GCGAskDuelRsp{
+ // Duel: &proto.GCGDuel{
+ // ServerSeq: game.serverSeqCounter,
+ // ShowInfoList: make([]*proto.GCGControllerShowInfo, 0, len(game.controllerMap)),
+ // ForbidFinishChallengeList: nil,
+ // CardList: nil,
+ // Unk3300_BIANMOPDEHO: 0,
+ // CostRevise: nil,
+ // GameId: game.gameId,
+ // FieldList: nil,
+ // Unk3300_CDCMBOKBLAK: nil,
+ // BusinessType: 0,
+ // IntentionList: nil,
+ // ChallengeList: nil,
+ // HistoryCardList: nil,
+ // Round: game.round,
+ // ControllerId: gameController.controllerId,
+ // HistoryMsgPackList: nil,
+ // Unk3300_JHDDNKFPINA: 0,
+ // CardIdList: make([]uint32, 0, 0),
+ // Unk3300_JBBMBKGOONO: 0,
+ // Phase: nil,
+ // },
+ //}
+ //// 玩家信息列表
+ //for _, controller := range game.controllerMap {
+ // gcgControllerShowInfo := &proto.GCGControllerShowInfo{
+ // ControllerId: controller.controllerId,
+ // ProfilePicture: &proto.ProfilePicture{},
+ // }
+ // // 如果为玩家则更改为玩家信息
+ // if controller.controllerType == ControllerType_Player {
+ // gcgControllerShowInfo.ProfilePicture.AvatarId = player.HeadImage
+ // gcgControllerShowInfo.ProfilePicture.AvatarId = player.AvatarMap[player.HeadImage].Costume
+ // }
+ // gcgAskDuelRsp.Duel.ShowInfoList = append(gcgAskDuelRsp.Duel.ShowInfoList)
+ //}
+ //GAME_MANAGER.SendMsg(cmd.GCGAskDuelRsp, player.PlayerID, player.ClientSeq, gcgAskDuelRsp)
+ // PacketGCGAskDuelRsp
+ gcgAskDuelRsp := new(proto.GCGAskDuelRsp)
+ gcgAskDuelRsp.Duel = &proto.GCGDuel{
+ ServerSeq: 1, // 应该每次+1
+ ShowInfoList: []*proto.GCGControllerShowInfo{
+ // 玩家的
+ {
+ // PsnId: ?
+ NickName: player.NickName,
+ // OnlineId: ?
+ ProfilePicture: &proto.ProfilePicture{
+ AvatarId: player.TeamConfig.GetActiveAvatarId(),
+ CostumeId: player.AvatarMap[player.TeamConfig.GetActiveAvatarId()].Costume,
+ },
+ ControllerId: 1,
+ },
+ // 对手的
+ {
+ ProfilePicture: &proto.ProfilePicture{},
+ ControllerId: 2,
+ },
+ },
+ // ForbidFinishChallengeList: nil,
+ CardList: []*proto.GCGCard{
+ {
+ TagList: []uint32{203, 303, 401},
+ Guid: 1, // 应该每次+1
+ IsShow: true,
+ TokenList: []*proto.GCGToken{
+ {
+ Key: 1,
+ Value: 10,
+ },
+ {
+ Key: 2,
+ Value: 10,
+ },
+ {
+ Key: 4,
+ },
+ {
+ Key: 5,
+ Value: 3,
+ },
+ },
+ // FaceType: 0, ?
+ SkillIdList: []uint32{13011, 13012, 13013},
+ // SkillLimitsList: nil,
+ Id: 1301,
+ ControllerId: 1,
+ },
+ {
+ TagList: []uint32{201, 301, 401},
+ Guid: 2, // 应该每次+1
+ IsShow: true,
+ TokenList: []*proto.GCGToken{
+ {
+ Key: 1,
+ Value: 10,
+ },
+ {
+ Key: 2,
+ Value: 10,
+ },
+ {
+ Key: 4,
+ },
+ {
+ Key: 5,
+ Value: 2,
+ },
+ },
+ // FaceType: 0, ?
+ SkillIdList: []uint32{11031, 11032, 11033},
+ // SkillLimitsList: nil,
+ Id: 1103,
+ ControllerId: 1,
+ },
+ {
+ TagList: []uint32{200, 300, 502, 503},
+ Guid: 3, // 应该每次+1
+ IsShow: true,
+ TokenList: []*proto.GCGToken{
+ {
+ Key: 1,
+ Value: 4,
+ },
+ {
+ Key: 2,
+ Value: 4,
+ },
+ {
+ Key: 4,
+ },
+ {
+ Key: 5,
+ Value: 2,
+ },
+ },
+ // FaceType: 0, ?
+ SkillIdList: []uint32{30011, 30012, 30013},
+ // SkillLimitsList: nil,
+ Id: 3301,
+ ControllerId: 2,
+ },
+ {
+ TagList: []uint32{200, 303, 502, 503},
+ Guid: 4, // 应该每次+1
+ IsShow: true,
+ TokenList: []*proto.GCGToken{
+ {
+ Key: 1,
+ Value: 8,
+ },
+ {
+ Key: 2,
+ Value: 8,
+ },
+ {
+ Key: 4,
+ },
+ {
+ Key: 5,
+ Value: 2,
+ },
+ },
+ // FaceType: 0, ?
+ SkillIdList: []uint32{33021, 33022, 33023, 33024},
+ // SkillLimitsList: nil,
+ Id: 3302,
+ ControllerId: 2,
+ },
+ {
+ Guid: 5, // 应该每次+1
+ IsShow: true,
+ SkillIdList: []uint32{13010111},
+ Id: 1301011,
+ ControllerId: 1,
+ },
+ },
+ Unk3300_BIANMOPDEHO: 1,
+ CostRevise: &proto.GCGCostReviseInfo{
+ CanUseHandCardIdList: nil,
+ SelectOnStageCostList: nil,
+ PlayCardCostList: nil,
+ AttackCostList: nil,
+ IsCanAttack: false,
+ },
+ // GameId: 0,
+ FieldList: []*proto.GCGPlayerField{
+ {
+ // Unk3300_IKJMGAHCFPM: 0,
+ ModifyZoneMap: map[uint32]*proto.GCGZone{
+ 1: {},
+ 2: {},
+ },
+ // Unk3300_GGHKFFADEAL: 0,
+ Unk3300_AOPJIOHMPOF: nil,
+ Unk3300_FDFPHNDOJML: 0,
+ Unk3300_IPLMHKCNDLE: &proto.GCGZone{},
+ Unk3300_EIHOMDLENMK: &proto.GCGZone{},
+ // WaitingList: nil,
+ // Unk3300_PBECINKKHND: 0,
+ ControllerId: 1,
+ Unk3300_INDJNJJJNKL: &proto.GCGZone{
+ CardList: []uint32{1, 2},
+ },
+ Unk3300_EFNAEFBECHD: &proto.GCGZone{},
+ // IsPassed: false,
+ // IntentionList: nil,
+ // DiceSideList: nil,
+ // DeckCardNum: 0,
+ // Unk3300_GLNIFLOKBPM: 0,
+ },
+ {
+ // Unk3300_IKJMGAHCFPM: 0,
+ ModifyZoneMap: map[uint32]*proto.GCGZone{
+ 3: {},
+ 4: {},
+ },
+ // Unk3300_GGHKFFADEAL: 0,
+ Unk3300_AOPJIOHMPOF: nil,
+ Unk3300_FDFPHNDOJML: 0,
+ Unk3300_IPLMHKCNDLE: &proto.GCGZone{},
+ Unk3300_EIHOMDLENMK: &proto.GCGZone{},
+ // WaitingList: nil,
+ // Unk3300_PBECINKKHND: 0,
+ ControllerId: 2,
+ Unk3300_INDJNJJJNKL: &proto.GCGZone{
+ CardList: []uint32{3, 4},
+ },
+ Unk3300_EFNAEFBECHD: &proto.GCGZone{},
+ // IsPassed: false,
+ // IntentionList: nil,
+ // DiceSideList: nil,
+ // DeckCardNum: 0,
+ // Unk3300_GLNIFLOKBPM: 0,
+ },
+ },
+ // 应该是玩家成员列表
+ Unk3300_CDCMBOKBLAK: []*proto.Unk3300_ADHENCIFKNI{
+ {
+ ControllerId: 1,
+ },
+ {
+ ControllerId: 2,
+ },
+ },
+ // BusinessType: 0,
+ // IntentionList: nil,
+ ChallengeList: []*proto.GCGDuelChallenge{
+ {
+ ChallengeId: 906,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 907,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 903,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 904,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 905,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 908,
+ TotalProgress: 1,
+ },
+ {
+ ChallengeId: 909,
+ TotalProgress: 1,
+ },
+ },
+ Round: 1,
+ ControllerId: 1,
+ HistoryMsgPackList: []*proto.GCGMessagePack{
+ {
+ MsgList: []*proto.GCGMessage{
+ {
+ Message: &proto.GCGMessage_PhaseChange{PhaseChange: &proto.GCGMsgPhaseChange{
+ BeforePhase: proto.GCGPhaseType_GCG_PHASE_TYPE_START,
+ AllowControllerMap: []*proto.Uint32Pair{
+ {
+ Key: 1,
+ Value: 1,
+ },
+ {
+ Key: 2,
+ Value: 1,
+ },
+ },
+ }},
+ },
+ },
+ },
+ {
+ MsgList: []*proto.GCGMessage{
+ {
+ Message: &proto.GCGMessage_UpdateController{UpdateController: &proto.GCGMsgUpdateController{
+ AllowControllerMap: []*proto.Uint32Pair{
+ {
+ Key: 1,
+ Value: 1,
+ },
+ {
+ Key: 2,
+ },
+ },
+ }},
+ },
+ },
+ },
+ {
+ ActionType: proto.GCGActionType_GCG_ACTION_TYPE_SEND_MESSAGE,
+ MsgList: []*proto.GCGMessage{
+ {
+ Message: &proto.GCGMessage_PhaseContinue{},
+ },
+ },
+ },
+ },
+ // Unk3300_JHDDNKFPINA: 0,
+ CardIdList: []uint32{1103, 1301, 3001, 3302, 1301011},
+ // Unk3300_JBBMBKGOONO: 0,
+ Phase: &proto.GCGPhase{
+ PhaseType: proto.GCGPhaseType_GCG_PHASE_TYPE_START,
+ AllowControllerMap: map[uint32]uint32{
+ 1: 1,
+ 2: 0,
+ },
+ },
+ }
+ gcgAskDuelRsp.Duel.HistoryCardList = gcgAskDuelRsp.Duel.CardList
+
+ GAME_MANAGER.SendMsg(cmd.GCGAskDuelRsp, player.PlayerID, player.ClientSeq, gcgAskDuelRsp)
+}
+
+// GCGInitFinishReq GCG决斗请求
+func (g *GameManager) GCGInitFinishReq(player *model.Player, payloadMsg pb.Message) {
+ GAME_MANAGER.SendMsg(cmd.GCGAskDuelRsp, player.PlayerID, player.ClientSeq, &proto.GCGInitFinishRsp{})
+}
+
+// PacketGCGGameBriefDataNotify GCG游戏简要数据通知
+func (g *GameManager) PacketGCGGameBriefDataNotify(player *model.Player, businessType proto.GCGGameBusinessType, gameId uint32) *proto.GCGGameBriefDataNotify {
+ gcgGameBriefDataNotify := &proto.GCGGameBriefDataNotify{
+ GcgBriefData: &proto.GCGGameBriefData{
+ BusinessType: businessType,
+ PlatformType: uint32(proto.PlatformType_PLATFORM_TYPE_PC), // TODO 根据玩家设备修改
+ GameId: gameId,
+ PlayerBriefList: []*proto.GCGPlayerBriefData{
+ {
+ Uid: player.PlayerID,
+ ControllerId: 1,
+ ProfilePicture: &proto.ProfilePicture{
+ AvatarId: player.TeamConfig.GetActiveAvatarId(),
+ CostumeId: player.AvatarMap[player.TeamConfig.GetActiveAvatarId()].Costume,
+ },
+ NickName: player.NickName,
+ CardIdList: []uint32{1301, 1103},
+ },
+ {
+ ControllerId: 2,
+ ProfilePicture: &proto.ProfilePicture{},
+ CardIdList: []uint32{3001, 3302},
+ },
+ },
+ },
+ IsNewGame: true,
+ }
+ return gcgGameBriefDataNotify
+}
+
+// PacketGCGTavernNpcInfoNotify GCG酒馆NPC信息通知
+func (g *GameManager) PacketGCGTavernNpcInfoNotify(player *model.Player) *proto.GCGTavernNpcInfoNotify {
+ gcgTavernNpcInfoNotify := &proto.GCGTavernNpcInfoNotify{
+ Unk3300_FKAKHMMIEBC: make([]*proto.GCGTavernNpcInfo, 0, 0),
+ Unk3300_BAMLNENDLCM: make([]*proto.GCGTavernNpcInfo, 0, 0),
+ CharacterNpc: &proto.GCGTavernNpcInfo{
+ Id: 0,
+ ScenePointId: 0,
+ LevelId: 0,
+ },
+ }
+ return gcgTavernNpcInfoNotify
+}
+
+// PacketGCGTCTavernInfoNotify GCG酒馆信息通知
+func (g *GameManager) PacketGCGTCTavernInfoNotify(player *model.Player) *proto.GCGTCTavernInfoNotify {
+ gcgTCTavernInfoNotify := &proto.GCGTCTavernInfoNotify{
+ LevelId: 0,
+ Unk3300_IMFJBNFMCHM: false,
+ Unk3300_MBGMHBNBKBK: false,
+ PointId: 0,
+ ElementType: 8,
+ AvatarId: 10000007,
+ CharacterId: 0,
+ }
+ return gcgTCTavernInfoNotify
+}
+
+// PacketGCGTCTavernChallengeDataNotify GCG酒馆挑战数据
+func (g *GameManager) PacketGCGTCTavernChallengeDataNotify(player *model.Player) *proto.GCGTCTavernChallengeDataNotify {
+ gcgTCTavernChallengeDataNotify := &proto.GCGTCTavernChallengeDataNotify{
+ TavernChallengeList: make([]*proto.GCGTCTavernChallengeData, 0, 0),
+ }
+ for _, challenge := range player.GCGInfo.TavernChallengeMap {
+ gcgTCTavernChallengeData := &proto.GCGTCTavernChallengeData{
+ UnlockLevelIdList: challenge.UnlockLevelIdList,
+ CharacterId: challenge.CharacterId,
+ }
+ gcgTCTavernChallengeDataNotify.TavernChallengeList = append(gcgTCTavernChallengeDataNotify.TavernChallengeList, gcgTCTavernChallengeData)
+ }
+ return gcgTCTavernChallengeDataNotify
+}
+
+// PacketGCGBasicDataNotify GCG基础数据通知
+func (g *GameManager) PacketGCGBasicDataNotify(player *model.Player) *proto.GCGBasicDataNotify {
+ gcgBasicDataNotify := &proto.GCGBasicDataNotify{
+ Level: player.GCGInfo.Level,
+ Exp: player.GCGInfo.Exp,
+ LevelRewardTakenList: make([]uint32, 0, 0),
+ }
+ return gcgBasicDataNotify
+}
+
+// PacketGCGLevelChallengeNotify GCG等级挑战通知
+func (g *GameManager) PacketGCGLevelChallengeNotify(player *model.Player) *proto.GCGLevelChallengeNotify {
+ gcgLevelChallengeNotify := &proto.GCGLevelChallengeNotify{
+ UnlockBossChallengeList: make([]*proto.GCGBossChallengeData, 0, 0),
+ UnlockWorldChallengeList: player.GCGInfo.UnlockWorldChallengeList,
+ LevelList: make([]*proto.GCGLevelData, 0, 0),
+ }
+ // Boss挑战信息
+ for _, challenge := range player.GCGInfo.UnlockBossChallengeMap {
+ gcgBossChallengeData := &proto.GCGBossChallengeData{
+ UnlockLevelIdList: challenge.UnlockLevelIdList,
+ Id: challenge.Id,
+ }
+ gcgLevelChallengeNotify.UnlockBossChallengeList = append(gcgLevelChallengeNotify.UnlockBossChallengeList, gcgBossChallengeData)
+ }
+ // 等级挑战信息
+ for _, challenge := range player.GCGInfo.LevelChallengeMap {
+ gcgLevelData := &proto.GCGLevelData{
+ FinishedChallengeIdList: challenge.FinishedChallengeIdList,
+ LevelId: challenge.LevelId,
+ }
+ gcgLevelChallengeNotify.LevelList = append(gcgLevelChallengeNotify.LevelList, gcgLevelData)
+ }
+ return gcgLevelChallengeNotify
+}
+
+// PacketGCGDSBanCardNotify GCG禁止的卡牌通知
+func (g *GameManager) PacketGCGDSBanCardNotify(player *model.Player) *proto.GCGDSBanCardNotify {
+ gcgDSBanCardNotify := &proto.GCGDSBanCardNotify{
+ CardList: player.GCGInfo.BanCardList,
+ }
+ return gcgDSBanCardNotify
+}
+
+// PacketGCGDSDataNotify GCG数据通知
+func (g *GameManager) PacketGCGDSDataNotify(player *model.Player) *proto.GCGDSDataNotify {
+ gcgDSDataNotify := &proto.GCGDSDataNotify{
+ CurDeckId: player.GCGInfo.CurDeckId,
+ DeckList: make([]*proto.GCGDSDeckData, 0, len(player.GCGInfo.DeckList)),
+ UnlockCardBackIdList: player.GCGInfo.UnlockCardBackIdList,
+ CardList: make([]*proto.GCGDSCardData, 0, len(player.GCGInfo.CardList)),
+ UnlockFieldIdList: player.GCGInfo.UnlockFieldIdList,
+ UnlockDeckIdList: player.GCGInfo.UnlockDeckIdList,
+ }
+ // 卡组列表
+ for i, deck := range player.GCGInfo.DeckList {
+ gcgDSDeckData := &proto.GCGDSDeckData{
+ CreateTime: uint32(deck.CreateTime),
+ FieldId: deck.FieldId,
+ CardBackId: deck.CardBackId,
+ CardList: deck.CardList,
+ CharacterCardList: deck.CharacterCardList,
+ Id: uint32(i),
+ Name: deck.Name,
+ IsValid: true, // TODO 校验卡组是否有效
+ }
+ gcgDSDataNotify.DeckList = append(gcgDSDataNotify.DeckList, gcgDSDeckData)
+ }
+ // 卡牌列表
+ for _, card := range player.GCGInfo.CardList {
+ gcgDSCardData := &proto.GCGDSCardData{
+ Num: card.Num,
+ FaceType: card.FaceType,
+ CardId: card.CardId,
+ ProficiencyRewardTakenIdxList: card.ProficiencyRewardTakenIdxList,
+ UnlockFaceTypeList: card.UnlockFaceTypeList,
+ Proficiency: card.Proficiency,
+ }
+ gcgDSDataNotify.CardList = append(gcgDSDataNotify.CardList, gcgDSCardData)
+ }
+ return gcgDSDataNotify
+}
diff --git a/gs/game/user_login.go b/gs/game/user_login.go
index 224dc3ed..858bc10e 100644
--- a/gs/game/user_login.go
+++ b/gs/game/user_login.go
@@ -131,6 +131,7 @@ func (g *GameManager) LoginNotify(userId uint32, player *model.Player, clientSeq
g.SendMsg(cmd.PlayerStoreNotify, userId, clientSeq, g.PacketPlayerStoreNotify(player))
g.SendMsg(cmd.AvatarDataNotify, userId, clientSeq, g.PacketAvatarDataNotify(player))
g.SendMsg(cmd.OpenStateUpdateNotify, userId, clientSeq, g.PacketOpenStateUpdateNotify())
+ g.GCGLogin(player) // 发送GCG登录相关的通知包
playerLoginRsp := &proto.PlayerLoginRsp{
IsUseAbilityHash: true,
AbilityHashCode: -228935105,
@@ -385,6 +386,7 @@ func (g *GameManager) CreatePlayer(userId uint32, nickName string, mainCharAvata
player.GameObjectGuidMap = make(map[uint64]model.GameObject)
player.DropInfo = model.NewDropInfo()
player.ChatMsgMap = make(map[uint32][]*model.ChatMsg)
+ player.GCGInfo = model.NewGCGInfo()
// 添加选定的主角
player.AddAvatar(mainCharAvatarId)
diff --git a/gs/game/user_map.go b/gs/game/user_map.go
index 48027657..3216bbc1 100644
--- a/gs/game/user_map.go
+++ b/gs/game/user_map.go
@@ -32,7 +32,7 @@ func (g *GameManager) SceneTransToPointReq(player *model.Player, payloadMsg pb.M
Y: transPos.Y,
Z: transPos.Z,
}
- g.TeleportPlayer(player, uint32(constant.EnterReasonConst.TransPoint), sceneId, pos)
+ g.TeleportPlayer(player, constant.EnterReasonConst.TransPoint, sceneId, pos, 0)
sceneTransToPointRsp := &proto.SceneTransToPointRsp{
PointId: req.PointId,
@@ -59,13 +59,13 @@ func (g *GameManager) MarkMapReq(player *model.Player, payloadMsg pb.Message) {
Y: float64(posYInt),
Z: float64(req.Mark.Pos.Z),
}
- g.TeleportPlayer(player, uint32(constant.EnterReasonConst.Gm), req.Mark.SceneId, pos)
+ g.TeleportPlayer(player, constant.EnterReasonConst.Gm, req.Mark.SceneId, pos, 0)
}
}
}
// TeleportPlayer 传送玩家至地图上的某个位置
-func (g *GameManager) TeleportPlayer(player *model.Player, enterReason uint32, sceneId uint32, pos *model.Vector) {
+func (g *GameManager) TeleportPlayer(player *model.Player, enterReason uint16, sceneId uint32, pos *model.Vector, dungeonId uint32) {
// 传送玩家
newSceneId := sceneId
oldSceneId := player.SceneId
@@ -97,14 +97,20 @@ func (g *GameManager) TeleportPlayer(player *model.Player, enterReason uint32, s
player.SceneLoadState = model.SceneNone
var enterType proto.EnterType
- if jumpScene {
- logger.Debug("player jump scene, scene: %v, pos: %v", player.SceneId, player.Pos)
- enterType = proto.EnterType_ENTER_TYPE_JUMP
- } else {
- logger.Debug("player goto scene, scene: %v, pos: %v", player.SceneId, player.Pos)
- enterType = proto.EnterType_ENTER_TYPE_GOTO
+ switch enterReason {
+ case constant.EnterReasonConst.DungeonEnter:
+ logger.Debug("player dungeon scene, scene: %v, pos: %v", player.SceneId, player.Pos)
+ enterType = proto.EnterType_ENTER_TYPE_DUNGEON
+ default:
+ if jumpScene {
+ logger.Debug("player jump scene, scene: %v, pos: %v", player.SceneId, player.Pos)
+ enterType = proto.EnterType_ENTER_TYPE_JUMP
+ } else {
+ logger.Debug("player goto scene, scene: %v, pos: %v", player.SceneId, player.Pos)
+ enterType = proto.EnterType_ENTER_TYPE_GOTO
+ }
}
- playerEnterSceneNotify := g.PacketPlayerEnterSceneNotifyTp(player, enterType, enterReason, oldSceneId, oldPos)
+ playerEnterSceneNotify := g.PacketPlayerEnterSceneNotifyTp(player, enterType, uint32(enterReason), oldSceneId, oldPos, dungeonId)
g.SendMsg(cmd.PlayerEnterSceneNotify, player.PlayerID, player.ClientSeq, playerEnterSceneNotify)
}
diff --git a/gs/game/user_multiplayer.go b/gs/game/user_multiplayer.go
index 461b985e..e4f69853 100644
--- a/gs/game/user_multiplayer.go
+++ b/gs/game/user_multiplayer.go
@@ -327,6 +327,7 @@ func (g *GameManager) HostEnterMpWorld(hostPlayer *model.Player, otherUid uint32
uint32(constant.EnterReasonConst.HostFromSingleToMp),
hostPlayer.SceneId,
hostPlayer.Pos,
+ 0,
)
g.SendMsg(cmd.PlayerEnterSceneNotify, hostPlayer.PlayerID, hostPlayer.ClientSeq, hostPlayerEnterSceneNotify)
diff --git a/gs/game/user_scene.go b/gs/game/user_scene.go
index bb9269c7..01892cfb 100644
--- a/gs/game/user_scene.go
+++ b/gs/game/user_scene.go
@@ -212,6 +212,8 @@ func (g *GameManager) SceneInitFinishReq(player *model.Player, payloadMsg pb.Mes
}
g.SendMsg(cmd.SyncScenePlayTeamEntityNotify, player.PlayerID, player.ClientSeq, syncScenePlayTeamEntityNotify)
+ g.GCGTavernInit(player) // GCG酒馆信息通知
+
SceneInitFinishRsp := &proto.SceneInitFinishRsp{
EnterSceneToken: player.EnterSceneToken,
}
@@ -346,8 +348,9 @@ func (g *GameManager) PacketPlayerEnterSceneNotifyTp(
enterReason uint32,
prevSceneId uint32,
prevPos *model.Vector,
+ dungeonId uint32,
) *proto.PlayerEnterSceneNotify {
- return g.PacketPlayerEnterSceneNotifyMp(player, player, enterType, enterReason, prevSceneId, prevPos)
+ return g.PacketPlayerEnterSceneNotifyMp(player, player, enterType, enterReason, prevSceneId, prevPos, dungeonId)
}
func (g *GameManager) PacketPlayerEnterSceneNotifyMp(
@@ -357,6 +360,7 @@ func (g *GameManager) PacketPlayerEnterSceneNotifyMp(
enterReason uint32,
prevSceneId uint32,
prevPos *model.Vector,
+ dungeonId uint32,
) *proto.PlayerEnterSceneNotify {
world := WORLD_MANAGER.GetWorldByID(player.WorldId)
scene := world.GetSceneById(player.SceneId)
@@ -373,12 +377,15 @@ func (g *GameManager) PacketPlayerEnterSceneNotifyMp(
WorldLevel: targetPlayer.PropertiesMap[constant.PlayerPropertyConst.PROP_PLAYER_WORLD_LEVEL],
EnterReason: enterReason,
WorldType: 1,
+ DungeonId: dungeonId,
}
playerEnterSceneNotify.SceneTransaction = strconv.Itoa(int(player.SceneId)) + "-" +
strconv.Itoa(int(targetPlayer.PlayerID)) + "-" +
strconv.Itoa(int(time.Now().Unix())) + "-" +
"296359"
- playerEnterSceneNotify.SceneTagIdList = []uint32{102, 111, 112, 116, 118, 126, 135, 140, 142, 149, 1091, 1094, 1095, 1099, 1101, 1103, 1105, 1110, 1120, 1122, 1125, 1127, 1129, 1131, 1133, 1135, 1137, 1138, 1140, 1143, 1146, 1165, 1168}
+ if player.SceneId == 3 {
+ playerEnterSceneNotify.SceneTagIdList = []uint32{102, 111, 112, 116, 118, 126, 135, 140, 142, 149, 1091, 1094, 1095, 1099, 1101, 1103, 1105, 1110, 1120, 1122, 1125, 1127, 1129, 1131, 1133, 1135, 1137, 1138, 1140, 1143, 1146, 1165, 1168}
+ }
return playerEnterSceneNotify
}
@@ -468,6 +475,9 @@ func (g *GameManager) AddSceneEntityNotify(player *model.Player, visionType prot
case uint32(proto.ProtEntityType_PROT_ENTITY_TYPE_MONSTER):
sceneEntityInfoMonster := g.PacketSceneEntityInfoMonster(scene, entity.id)
entityList = append(entityList, sceneEntityInfoMonster)
+ case uint32(proto.ProtEntityType_PROT_ENTITY_TYPE_NPC):
+ sceneEntityInfoNpc := g.PacketSceneEntityInfoNpc(scene, entity.id)
+ entityList = append(entityList, sceneEntityInfoNpc)
case uint32(proto.ProtEntityType_PROT_ENTITY_TYPE_GADGET):
sceneEntityInfoGadget := g.PacketSceneEntityInfoGadget(scene, entity.id)
entityList = append(entityList, sceneEntityInfoGadget)
@@ -580,7 +590,7 @@ func (g *GameManager) PacketSceneEntityInfoAvatar(scene *Scene, player *model.Pl
Val: int64(entity.level),
}}},
FightPropList: g.PacketFightPropMapToPbFightPropList(entity.fightProp),
- LifeState: 1,
+ LifeState: uint32(entity.lifeState),
AnimatorParaList: make([]*proto.AnimatorParameterValueInfoPair, 0),
Entity: &proto.SceneEntityInfo_Avatar{
Avatar: g.PacketSceneAvatarInfo(scene, player, avatarId),
@@ -637,7 +647,7 @@ func (g *GameManager) PacketSceneEntityInfoMonster(scene *Scene, entityId uint32
Val: int64(entity.level),
}}},
FightPropList: g.PacketFightPropMapToPbFightPropList(entity.fightProp),
- LifeState: 1,
+ LifeState: uint32(entity.lifeState),
AnimatorParaList: make([]*proto.AnimatorParameterValueInfoPair, 0),
Entity: &proto.SceneEntityInfo_Monster{
Monster: g.PacketSceneMonsterInfo(),
@@ -656,6 +666,54 @@ func (g *GameManager) PacketSceneEntityInfoMonster(scene *Scene, entityId uint32
return sceneEntityInfo
}
+func (g *GameManager) PacketSceneEntityInfoNpc(scene *Scene, entityId uint32) *proto.SceneEntityInfo {
+ entity := scene.GetEntity(entityId)
+ if entity == nil {
+ return new(proto.SceneEntityInfo)
+ }
+ pos := &proto.Vector{
+ X: float32(entity.pos.X),
+ Y: float32(entity.pos.Y),
+ Z: float32(entity.pos.Z),
+ }
+ sceneEntityInfo := &proto.SceneEntityInfo{
+ EntityType: proto.ProtEntityType_PROT_ENTITY_TYPE_NPC,
+ EntityId: entity.id,
+ MotionInfo: &proto.MotionInfo{
+ Pos: pos,
+ Rot: &proto.Vector{
+ X: float32(entity.rot.X),
+ Y: float32(entity.rot.Y),
+ Z: float32(entity.rot.Z),
+ },
+ Speed: &proto.Vector{},
+ State: proto.MotionState(entity.moveState),
+ },
+ PropList: []*proto.PropPair{{Type: uint32(constant.PlayerPropertyConst.PROP_LEVEL), PropValue: &proto.PropValue{
+ Type: uint32(constant.PlayerPropertyConst.PROP_LEVEL),
+ Value: &proto.PropValue_Ival{Ival: int64(entity.level)},
+ Val: int64(entity.level),
+ }}},
+ FightPropList: g.PacketFightPropMapToPbFightPropList(entity.fightProp),
+ LifeState: uint32(entity.lifeState),
+ AnimatorParaList: make([]*proto.AnimatorParameterValueInfoPair, 0),
+ Entity: &proto.SceneEntityInfo_Npc{
+ Npc: g.PacketSceneNpcInfo(entity.npcEntity),
+ },
+ EntityClientData: new(proto.EntityClientData),
+ EntityAuthorityInfo: &proto.EntityAuthorityInfo{
+ AbilityInfo: new(proto.AbilitySyncStateInfo),
+ RendererChangedInfo: new(proto.EntityRendererChangedInfo),
+ AiInfo: &proto.SceneEntityAiInfo{
+ IsAiOpen: true,
+ BornPos: pos,
+ },
+ BornPos: pos,
+ },
+ }
+ return sceneEntityInfo
+}
+
func (g *GameManager) PacketSceneEntityInfoGadget(scene *Scene, entityId uint32) *proto.SceneEntityInfo {
entity := scene.GetEntity(entityId)
if entity == nil {
@@ -685,7 +743,7 @@ func (g *GameManager) PacketSceneEntityInfoGadget(scene *Scene, entityId uint32)
Val: int64(1),
}}},
FightPropList: g.PacketFightPropMapToPbFightPropList(entity.fightProp),
- LifeState: 1,
+ LifeState: uint32(entity.lifeState),
AnimatorParaList: make([]*proto.AnimatorParameterValueInfoPair, 0),
EntityClientData: new(proto.EntityClientData),
EntityAuthorityInfo: &proto.EntityAuthorityInfo{
@@ -767,6 +825,16 @@ func (g *GameManager) PacketSceneMonsterInfo() *proto.SceneMonsterInfo {
return sceneMonsterInfo
}
+func (g *GameManager) PacketSceneNpcInfo(entity *NpcEntity) *proto.SceneNpcInfo {
+ sceneNpcInfo := &proto.SceneNpcInfo{
+ NpcId: entity.NpcId,
+ RoomId: entity.RoomId,
+ ParentQuestId: entity.ParentQuestId,
+ BlockId: entity.BlockId,
+ }
+ return sceneNpcInfo
+}
+
func (g *GameManager) PacketSceneGadgetInfoNormal(gadgetId uint32) *proto.SceneGadgetInfo {
sceneGadgetInfo := &proto.SceneGadgetInfo{
GadgetId: gadgetId,
diff --git a/gs/game/user_stamina.go b/gs/game/user_stamina.go
index 41a2b665..b9ced1d9 100644
--- a/gs/game/user_stamina.go
+++ b/gs/game/user_stamina.go
@@ -482,7 +482,7 @@ func (g *GameManager) DrownBackHandler(player *model.Player) {
// }
// }
// 传送玩家至安全位置
- g.TeleportPlayer(player, uint32(constant.EnterReasonConst.Revival), player.SceneId, pos)
+ g.TeleportPlayer(player, constant.EnterReasonConst.Revival, player.SceneId, pos, 0)
}
// 防止重置后又被修改
if player.StaminaInfo.DrownBackDelay != 0 {
diff --git a/gs/game/user_vehicle.go b/gs/game/user_vehicle.go
index eb0a5600..6cb50c12 100644
--- a/gs/game/user_vehicle.go
+++ b/gs/game/user_vehicle.go
@@ -55,8 +55,7 @@ func (g *GameManager) CreateVehicleReq(player *model.Player, payloadMsg pb.Messa
g.CommonRetError(cmd.VehicleInteractRsp, player, &proto.VehicleInteractRsp{})
return
}
- GAME_MANAGER.AddSceneEntityNotifyBroadcast(player, scene, proto.VisionType_VISION_TYPE_BORN, []*proto.SceneEntityInfo{GAME_MANAGER.PacketSceneEntityInfoGadget(scene, entityId)}, false)
-
+ GAME_MANAGER.AddSceneEntityNotify(player, proto.VisionType_VISION_TYPE_BORN, []uint32{entityId}, true, false)
// 记录创建的载具信息
player.VehicleInfo.LastCreateEntityIdMap[req.VehicleId] = entityId
player.VehicleInfo.LastCreateTime = time.Now().UnixMilli()
diff --git a/gs/game/world_manager.go b/gs/game/world_manager.go
index b57f540c..f7369e28 100644
--- a/gs/game/world_manager.go
+++ b/gs/game/world_manager.go
@@ -527,6 +527,13 @@ type AvatarEntity struct {
type MonsterEntity struct {
}
+type NpcEntity struct {
+ NpcId uint32
+ RoomId uint32
+ ParentQuestId uint32
+ BlockId uint32
+}
+
const (
GADGET_TYPE_NORMAL = iota
GADGET_TYPE_GATHER
@@ -579,6 +586,7 @@ type Entity struct {
level uint8
avatarEntity *AvatarEntity
monsterEntity *MonsterEntity
+ npcEntity *NpcEntity
gadgetEntity *GadgetEntity
}
@@ -748,6 +756,7 @@ func (s *Scene) CreateEntityMonster(pos *model.Vector, level uint8, fightProp ma
fightProp: fightProp,
entityType: uint32(proto.ProtEntityType_PROT_ENTITY_TYPE_MONSTER),
level: level,
+ monsterEntity: &MonsterEntity{},
}
s.entityMap[entity.id] = entity
s.world.aoiManager.AddEntityIdToGridByPos(entity.id, float32(entity.pos.X), float32(entity.pos.Y), float32(entity.pos.Z))
@@ -763,6 +772,36 @@ func (s *Scene) CreateEntityMonster(pos *model.Vector, level uint8, fightProp ma
return entity.id
}
+func (s *Scene) CreateEntityNpc(pos, rot *model.Vector, npcId, roomId, parentQuestId, blockId uint32) uint32 {
+ entityId := s.world.GetNextWorldEntityId(constant.EntityIdTypeConst.NPC)
+ entity := &Entity{
+ id: entityId,
+ scene: s,
+ lifeState: constant.LifeStateConst.LIFE_ALIVE,
+ pos: pos,
+ rot: rot,
+ moveState: uint16(proto.MotionState_MOTION_STATE_NONE),
+ lastMoveSceneTimeMs: 0,
+ lastMoveReliableSeq: 0,
+ fightProp: map[uint32]float32{
+ uint32(constant.FightPropertyConst.FIGHT_PROP_CUR_HP): math.MaxFloat32,
+ uint32(constant.FightPropertyConst.FIGHT_PROP_MAX_HP): math.MaxFloat32,
+ uint32(constant.FightPropertyConst.FIGHT_PROP_BASE_HP): float32(1),
+ },
+ entityType: uint32(proto.ProtEntityType_PROT_ENTITY_TYPE_NPC),
+ level: 0,
+ npcEntity: &NpcEntity{
+ NpcId: npcId,
+ RoomId: roomId,
+ ParentQuestId: parentQuestId,
+ BlockId: blockId,
+ },
+ }
+ s.entityMap[entity.id] = entity
+ s.world.aoiManager.AddEntityIdToGridByPos(entity.id, float32(entity.pos.X), float32(entity.pos.Y), float32(entity.pos.Z))
+ return entity.id
+}
+
func (s *Scene) CreateEntityGadgetNormal(pos *model.Vector, gadgetId uint32) uint32 {
entityId := s.world.GetNextWorldEntityId(constant.EntityIdTypeConst.GADGET)
entity := &Entity{
diff --git a/gs/model/gcg.go b/gs/model/gcg.go
new file mode 100644
index 00000000..14083cad
--- /dev/null
+++ b/gs/model/gcg.go
@@ -0,0 +1,97 @@
+package model
+
+// GCGCard 卡牌
+type GCGCard struct {
+ CardId uint32 `bson:"cardId"` // 卡牌Id
+ Num uint32 `bson:"num"` // 数量
+ FaceType uint32 `bson:"faceType"` // 卡面类型
+ UnlockFaceTypeList []uint32 `bson:"unlockFaceTypeList"` // 解锁的卡面类型
+ Proficiency uint32 `bson:"proficiency"` // 熟练程度等级
+ ProficiencyRewardTakenIdxList []uint32 `bson:"faceType"` // 熟练程度奖励列表
+}
+
+// GCGDeck 卡组
+type GCGDeck struct {
+ Name string `bson:"name"` // 卡组名
+ CharacterCardList []uint32 `bson:"characterCardList"` // 角色牌列表
+ CardList []uint32 `bson:"cardList"` // 卡牌列表
+ FieldId uint32 `bson:"fieldId"` // 牌盒样式Id
+ CardBackId uint32 `bson:"cardBackId"` // 牌背样式Id
+ CreateTime int64 `bson:"createTime"` // 卡组创建时间
+}
+
+// GCGTavernChallenge 酒馆挑战信息
+type GCGTavernChallenge struct {
+ CharacterId uint32 `bson:"characterId"` // 角色Id
+ UnlockLevelIdList []uint32 `bson:"unlockLevelIdList"` // 解锁的等级Id
+}
+
+// GCGBossChallenge Boss挑战信息
+type GCGBossChallenge struct {
+ Id uint32 `bson:"Id"` // BossId
+ UnlockLevelIdList []uint32 `bson:"unlockLevelIdList"` // 解锁的等级Id
+}
+
+// GCGLevelChallenge 等级挑战信息
+type GCGLevelChallenge struct {
+ LevelId uint32 `bson:"levelId"` // 等级Id
+ FinishedChallengeIdList []uint32 `bson:"finishedChallengeIdList"` // 完成的挑战Id列表
+}
+
+// GCGInfo 七圣召唤信息
+type GCGInfo struct {
+ // 基础信息
+ Level uint32 `bson:"level"` // 等级
+ Exp uint32 `bson:"exp"` // 经验
+ // 卡牌
+ CardList map[uint32]*GCGCard `bson:"cardList"` // 拥有的卡牌 uint32 -> CardId(卡牌Id)
+ CurDeckId uint32 `bson:"CurDeckId"` // 现行的卡组Id
+ DeckList []*GCGDeck `bson:"deckList"` // 卡组列表
+ UnlockDeckIdList []uint32 `bson:"unlockDeckIdList"` // 解锁的卡组
+ UnlockCardBackIdList []uint32 `bson:"unlockCardBackIdList"` // 解锁的卡背
+ UnlockFieldIdList []uint32 `bson:"unlockFieldIdList"` // 解锁的牌盒
+ // 挑战
+ TavernChallengeMap map[uint32]*GCGTavernChallenge `bson:"tavernChallengeMap"` // 酒馆挑战 uint32 -> CharacterId(角色Id)
+ LevelChallengeMap map[uint32]*GCGLevelChallenge `bson:"levelChallengeMap"` // 等级挑战 uint32 -> LevelId(等级Id)
+ UnlockBossChallengeMap map[uint32]*GCGBossChallenge `bson:"unlockBossChallengeMap"` // 解锁的Boss挑战 uint32 -> Id
+ UnlockWorldChallengeList []uint32 `bson:"unlockWorldChallengeList"` // 解锁的世界挑战
+ // 其他
+ BanCardList []uint32 `bson:"banCardList"` // 被禁止的卡牌列表
+}
+
+func NewGCGInfo() *GCGInfo {
+ gcgInfo := &GCGInfo{
+ Level: 0,
+ Exp: 0,
+ CardList: make(map[uint32]*GCGCard, 0),
+ CurDeckId: 0,
+ DeckList: make([]*GCGDeck, 0, 0),
+ UnlockDeckIdList: make([]uint32, 0, 0),
+ UnlockCardBackIdList: make([]uint32, 0, 0),
+ UnlockFieldIdList: make([]uint32, 0, 0),
+ TavernChallengeMap: make(map[uint32]*GCGTavernChallenge, 0),
+ UnlockBossChallengeMap: make(map[uint32]*GCGBossChallenge, 0),
+ UnlockWorldChallengeList: make([]uint32, 0, 0),
+ BanCardList: make([]uint32, 0, 0),
+ }
+ gcgInfo.UnlockDeckIdList = append(gcgInfo.UnlockDeckIdList, 1, 2)
+ gcgInfo.UnlockCardBackIdList = append(gcgInfo.UnlockCardBackIdList, 0)
+ gcgInfo.UnlockFieldIdList = append(gcgInfo.UnlockFieldIdList, 0)
+ gcgInfo.TavernChallengeMap[8] = &GCGTavernChallenge{
+ CharacterId: 8,
+ UnlockLevelIdList: make([]uint32, 0, 0),
+ }
+ gcgInfo.TavernChallengeMap[13] = &GCGTavernChallenge{
+ CharacterId: 13,
+ UnlockLevelIdList: make([]uint32, 0, 0),
+ }
+ gcgInfo.TavernChallengeMap[17] = &GCGTavernChallenge{
+ CharacterId: 17,
+ UnlockLevelIdList: make([]uint32, 0, 0),
+ }
+ gcgInfo.TavernChallengeMap[20] = &GCGTavernChallenge{
+ CharacterId: 20,
+ UnlockLevelIdList: make([]uint32, 0, 0),
+ }
+ return gcgInfo
+}
diff --git a/gs/model/player.go b/gs/model/player.go
index 907842ba..db902fdf 100644
--- a/gs/model/player.go
+++ b/gs/model/player.go
@@ -53,6 +53,7 @@ type Player struct {
DropInfo *DropInfo `bson:"dropInfo"` // 掉落信息
MainCharAvatarId uint32 `bson:"mainCharAvatarId"` // 主角id
ChatMsgMap map[uint32][]*ChatMsg `bson:"chatMsgMap"` // 聊天信息
+ GCGInfo *GCGInfo `bson:"gcgInfo"` // 七圣召唤信息
IsGM uint8 `bson:"isGM"` // 管理员权限等级
// 在线数据 请随意 记得加忽略字段的tag
EnterSceneToken uint32 `bson:"-" msgpack:"-"` // 玩家的世界进入令牌
@@ -73,6 +74,7 @@ type Player struct {
AbilityInvokeHandler *InvokeHandler[proto.AbilityInvokeEntry] `bson:"-" msgpack:"-"` // ability转发器
GateAppId string `bson:"-" msgpack:"-"` // 网关服务器的appid
FightAppId string `bson:"-" msgpack:"-"` // 战斗服务器的appid
+ GCGCurGameGuid uint32 `bson:"-" msgpack:"-"` // GCG玩家所在的游戏guid
}
func (p *Player) GetNextGameObjectGuid() uint64 {
@@ -86,6 +88,7 @@ func (p *Player) InitAll() {
p.StaminaInfo = new(StaminaInfo)
p.VehicleInfo = new(VehicleInfo)
p.VehicleInfo.LastCreateEntityIdMap = make(map[uint32]uint32)
+ p.GCGInfo = NewGCGInfo()
p.InitAllAvatar()
p.InitAllWeapon()
p.InitAllItem()
diff --git a/protocol/cmd/cmd_id.go b/protocol/cmd/cmd_id.go
index 32ee78af..1c54c792 100644
--- a/protocol/cmd/cmd_id.go
+++ b/protocol/cmd/cmd_id.go
@@ -1,2056 +1,2126 @@
package cmd
const (
- AbilityChangeNotify uint16 = 1131
- AbilityInvocationFailNotify uint16 = 1107
- AbilityInvocationFixedNotify uint16 = 1172
- AbilityInvocationsNotify uint16 = 1198
- AcceptCityReputationRequestReq uint16 = 2890
- AcceptCityReputationRequestRsp uint16 = 2873
- AchievementAllDataNotify uint16 = 2676
- AchievementUpdateNotify uint16 = 2668
- ActivityAcceptAllGiveGiftReq uint16 = 8113
- ActivityAcceptAllGiveGiftRsp uint16 = 8132
- ActivityAcceptGiveGiftReq uint16 = 8095
- ActivityAcceptGiveGiftRsp uint16 = 8502
- ActivityBannerClearReq uint16 = 2009
- ActivityBannerClearRsp uint16 = 2163
- ActivityBannerNotify uint16 = 2155
- ActivityCoinInfoNotify uint16 = 2008
- ActivityCondStateChangeNotify uint16 = 2140
- ActivityDisableTransferPointInteractionNotify uint16 = 8982
- ActivityGetCanGiveFriendGiftReq uint16 = 8559
- ActivityGetCanGiveFriendGiftRsp uint16 = 8848
- ActivityGetFriendGiftWishListReq uint16 = 8806
- ActivityGetFriendGiftWishListRsp uint16 = 8253
- ActivityGetRecvGiftListReq uint16 = 8725
- ActivityGetRecvGiftListRsp uint16 = 8120
- ActivityGiveFriendGiftReq uint16 = 8233
- ActivityGiveFriendGiftRsp uint16 = 8696
- ActivityHaveRecvGiftNotify uint16 = 8733
- ActivityInfoNotify uint16 = 2060
- ActivityPlayOpenAnimNotify uint16 = 2157
- ActivityPushTipsInfoNotify uint16 = 8513
- ActivityReadPushTipsReq uint16 = 8145
- ActivityReadPushTipsRsp uint16 = 8574
- ActivitySaleChangeNotify uint16 = 2071
- ActivityScheduleInfoNotify uint16 = 2073
- ActivitySelectAvatarCardReq uint16 = 2028
- ActivitySelectAvatarCardRsp uint16 = 2189
- ActivitySetGiftWishReq uint16 = 8017
- ActivitySetGiftWishRsp uint16 = 8554
- ActivityTakeAllScoreRewardReq uint16 = 8372
+ AbilityChangeNotify uint16 = 1127
+ AbilityInvocationFailNotify uint16 = 1200
+ AbilityInvocationFixedNotify uint16 = 1179
+ AbilityInvocationsNotify uint16 = 1130
+ AcceptCityReputationRequestReq uint16 = 2847
+ AcceptCityReputationRequestRsp uint16 = 2878
+ AchievementAllDataNotify uint16 = 2692
+ AchievementUpdateNotify uint16 = 2691
+ ActivityAcceptAllGiveGiftReq uint16 = 8900
+ ActivityAcceptAllGiveGiftRsp uint16 = 8771
+ ActivityAcceptGiveGiftReq uint16 = 8827
+ ActivityAcceptGiveGiftRsp uint16 = 8047
+ ActivityBannerClearReq uint16 = 2147
+ ActivityBannerClearRsp uint16 = 2198
+ ActivityBannerNotify uint16 = 2160
+ ActivityCoinInfoNotify uint16 = 2018
+ ActivityCondStateChangeNotify uint16 = 2194
+ ActivityDisableTransferPointInteractionNotify uint16 = 8029
+ ActivityGetCanGiveFriendGiftReq uint16 = 8330
+ ActivityGetCanGiveFriendGiftRsp uint16 = 8374
+ ActivityGetFriendGiftWishListReq uint16 = 8642
+ ActivityGetFriendGiftWishListRsp uint16 = 8355
+ ActivityGetRecvGiftListReq uint16 = 8995
+ ActivityGetRecvGiftListRsp uint16 = 8844
+ ActivityGiveFriendGiftReq uint16 = 8178
+ ActivityGiveFriendGiftRsp uint16 = 8373
+ ActivityHaveRecvGiftNotify uint16 = 8118
+ ActivityInfoNotify uint16 = 2119
+ ActivityPlayOpenAnimNotify uint16 = 2059
+ ActivityPushTipsInfoNotify uint16 = 8418
+ ActivityReadPushTipsReq uint16 = 8007
+ ActivityReadPushTipsRsp uint16 = 8499
+ ActivitySaleChangeNotify uint16 = 2012
+ ActivityScheduleInfoNotify uint16 = 2124
+ ActivitySelectAvatarCardReq uint16 = 2052
+ ActivitySelectAvatarCardRsp uint16 = 2154
+ ActivitySetGiftWishReq uint16 = 8329
+ ActivitySetGiftWishRsp uint16 = 8757
+ ActivityTakeAllScoreRewardReq uint16 = 8162
ActivityTakeAllScoreRewardRsp uint16 = 8043
- ActivityTakeScoreRewardReq uint16 = 8971
- ActivityTakeScoreRewardRsp uint16 = 8583
- ActivityTakeWatcherRewardBatchReq uint16 = 2159
- ActivityTakeWatcherRewardBatchRsp uint16 = 2109
- ActivityTakeWatcherRewardReq uint16 = 2038
- ActivityTakeWatcherRewardRsp uint16 = 2034
- ActivityUpdateWatcherNotify uint16 = 2156
- AddAranaraCollectionNotify uint16 = 6368
- AddBackupAvatarTeamReq uint16 = 1687
- AddBackupAvatarTeamRsp uint16 = 1735
- AddBlacklistReq uint16 = 4088
- AddBlacklistRsp uint16 = 4026
- AddFriendNotify uint16 = 4022
- AddNoGachaAvatarCardNotify uint16 = 1655
- AddQuestContentProgressReq uint16 = 421
- AddQuestContentProgressRsp uint16 = 403
- AddRandTaskInfoNotify uint16 = 119
- AddSeenMonsterNotify uint16 = 223
- AdjustWorldLevelReq uint16 = 164
- AdjustWorldLevelRsp uint16 = 138
- AllCoopInfoNotify uint16 = 1976
- AllMarkPointNotify uint16 = 3283
- AllSeenMonsterNotify uint16 = 271
- AllShareCDDataNotify uint16 = 9072
- AllWidgetBackgroundActiveStateNotify uint16 = 6092
- AllWidgetDataNotify uint16 = 4271
- AnchorPointDataNotify uint16 = 4276
- AnchorPointOpReq uint16 = 4257
- AnchorPointOpRsp uint16 = 4252
- AnimatorForceSetAirMoveNotify uint16 = 374
- AntiAddictNotify uint16 = 180
- AranaraCollectionDataNotify uint16 = 6376
- AreaPlayInfoNotify uint16 = 3323
- ArenaChallengeFinishNotify uint16 = 2030
- AskAddFriendNotify uint16 = 4065
- AskAddFriendReq uint16 = 4007
- AskAddFriendRsp uint16 = 4021
- AssociateInferenceWordReq uint16 = 429
- AssociateInferenceWordRsp uint16 = 457
- AsterLargeInfoNotify uint16 = 2146
- AsterLittleInfoNotify uint16 = 2068
- AsterMidCampInfoNotify uint16 = 2133
- AsterMidInfoNotify uint16 = 2031
- AsterMiscInfoNotify uint16 = 2036
- AsterProgressInfoNotify uint16 = 2016
- AvatarAddNotify uint16 = 1769
- AvatarBuffAddNotify uint16 = 388
- AvatarBuffDelNotify uint16 = 326
- AvatarCardChangeReq uint16 = 688
- AvatarCardChangeRsp uint16 = 626
- AvatarChangeAnimHashReq uint16 = 1711
- AvatarChangeAnimHashRsp uint16 = 1647
- AvatarChangeCostumeNotify uint16 = 1644
- AvatarChangeCostumeReq uint16 = 1778
- AvatarChangeCostumeRsp uint16 = 1645
- AvatarChangeElementTypeReq uint16 = 1785
- AvatarChangeElementTypeRsp uint16 = 1651
- AvatarDataNotify uint16 = 1633
- AvatarDelNotify uint16 = 1773
- AvatarDieAnimationEndReq uint16 = 1610
- AvatarDieAnimationEndRsp uint16 = 1694
- AvatarEnterElementViewNotify uint16 = 334
- AvatarEquipAffixStartNotify uint16 = 1662
- AvatarEquipChangeNotify uint16 = 647
- AvatarExpeditionAllDataReq uint16 = 1722
- AvatarExpeditionAllDataRsp uint16 = 1648
- AvatarExpeditionCallBackReq uint16 = 1752
- AvatarExpeditionCallBackRsp uint16 = 1726
- AvatarExpeditionDataNotify uint16 = 1771
- AvatarExpeditionGetRewardReq uint16 = 1623
- AvatarExpeditionGetRewardRsp uint16 = 1784
- AvatarExpeditionStartReq uint16 = 1715
- AvatarExpeditionStartRsp uint16 = 1719
- AvatarFetterDataNotify uint16 = 1782
- AvatarFetterLevelRewardReq uint16 = 1653
- AvatarFetterLevelRewardRsp uint16 = 1606
- AvatarFightPropNotify uint16 = 1207
- AvatarFightPropUpdateNotify uint16 = 1221
- AvatarFlycloakChangeNotify uint16 = 1643
- AvatarFollowRouteNotify uint16 = 3458
- AvatarGainCostumeNotify uint16 = 1677
- AvatarGainFlycloakNotify uint16 = 1656
- AvatarLifeStateChangeNotify uint16 = 1290
- AvatarPromoteGetRewardReq uint16 = 1696
- AvatarPromoteGetRewardRsp uint16 = 1683
- AvatarPromoteReq uint16 = 1664
- AvatarPromoteRsp uint16 = 1639
- AvatarPropChangeReasonNotify uint16 = 1273
- AvatarPropNotify uint16 = 1231
- AvatarSatiationDataNotify uint16 = 1693
- AvatarSkillChangeNotify uint16 = 1097
- AvatarSkillDepotChangeNotify uint16 = 1035
- AvatarSkillInfoNotify uint16 = 1090
- AvatarSkillMaxChargeCountNotify uint16 = 1003
- AvatarSkillUpgradeReq uint16 = 1075
+ ActivityTakeScoreRewardReq uint16 = 8127
+ ActivityTakeScoreRewardRsp uint16 = 8527
+ ActivityTakeWatcherRewardBatchReq uint16 = 2184
+ ActivityTakeWatcherRewardBatchRsp uint16 = 2090
+ ActivityTakeWatcherRewardReq uint16 = 2073
+ ActivityTakeWatcherRewardRsp uint16 = 2109
+ ActivityUpdateWatcherNotify uint16 = 2103
+ AddAranaraCollectionNotify uint16 = 6391
+ AddBackupAvatarTeamReq uint16 = 1616
+ AddBackupAvatarTeamRsp uint16 = 1782
+ AddBlacklistReq uint16 = 4094
+ AddBlacklistRsp uint16 = 4072
+ AddFriendNotify uint16 = 4037
+ AddNoGachaAvatarCardNotify uint16 = 1610
+ AddQuestContentProgressReq uint16 = 443
+ AddQuestContentProgressRsp uint16 = 461
+ AddRandTaskInfoNotify uint16 = 154
+ AddSeenMonsterNotify uint16 = 213
+ AdjustWorldLevelReq uint16 = 112
+ AdjustWorldLevelRsp uint16 = 131
+ AllCoopInfoNotify uint16 = 1992
+ AllMarkPointNotify uint16 = 3322
+ AllSeenMonsterNotify uint16 = 228
+ AllShareCDDataNotify uint16 = 9079
+ AllWidgetBackgroundActiveStateNotify uint16 = 5932
+ AllWidgetDataNotify uint16 = 4286
+ AnchorPointDataNotify uint16 = 4292
+ AnchorPointOpReq uint16 = 4285
+ AnchorPointOpRsp uint16 = 4277
+ AnimatorForceSetAirMoveNotify uint16 = 334
+ AntiAddictNotify uint16 = 174
+ AranaraCollectionDataNotify uint16 = 6392
+ AreaPlayInfoNotify uint16 = 3274
+ ArenaChallengeFinishNotify uint16 = 2164
+ AskAddFriendNotify uint16 = 4089
+ AskAddFriendReq uint16 = 4100
+ AskAddFriendRsp uint16 = 4043
+ AssociateInferenceWordReq uint16 = 420
+ AssociateInferenceWordRsp uint16 = 463
+ AsterLargeInfoNotify uint16 = 2023
+ AsterLittleInfoNotify uint16 = 2121
+ AsterMidCampInfoNotify uint16 = 2195
+ AsterMidInfoNotify uint16 = 2055
+ AsterMiscInfoNotify uint16 = 2140
+ AsterProgressInfoNotify uint16 = 2091
+ AvatarAddNotify uint16 = 1757
+ AvatarBuffAddNotify uint16 = 394
+ AvatarBuffDelNotify uint16 = 372
+ AvatarCardChangeReq uint16 = 694
+ AvatarCardChangeRsp uint16 = 672
+ AvatarChangeAnimHashReq uint16 = 1767
+ AvatarChangeAnimHashRsp uint16 = 1620
+ AvatarChangeCostumeNotify uint16 = 1665
+ AvatarChangeCostumeReq uint16 = 1707
+ AvatarChangeCostumeRsp uint16 = 1609
+ AvatarChangeElementTypeReq uint16 = 1779
+ AvatarChangeElementTypeRsp uint16 = 1717
+ AvatarDataNotify uint16 = 1607
+ AvatarDelNotify uint16 = 1769
+ AvatarDieAnimationEndReq uint16 = 1695
+ AvatarDieAnimationEndRsp uint16 = 1604
+ AvatarEnterElementViewNotify uint16 = 380
+ AvatarEquipAffixStartNotify uint16 = 1708
+ AvatarEquipChangeNotify uint16 = 676
+ AvatarExpeditionAllDataReq uint16 = 1685
+ AvatarExpeditionAllDataRsp uint16 = 1621
+ AvatarExpeditionCallBackReq uint16 = 1777
+ AvatarExpeditionCallBackRsp uint16 = 1702
+ AvatarExpeditionDataNotify uint16 = 1632
+ AvatarExpeditionGetRewardReq uint16 = 1640
+ AvatarExpeditionGetRewardRsp uint16 = 1715
+ AvatarExpeditionStartReq uint16 = 1697
+ AvatarExpeditionStartRsp uint16 = 1646
+ AvatarFetterDataNotify uint16 = 1617
+ AvatarFetterLevelRewardReq uint16 = 1642
+ AvatarFetterLevelRewardRsp uint16 = 1753
+ AvatarFightPropNotify uint16 = 1300
+ AvatarFightPropUpdateNotify uint16 = 1243
+ AvatarFlycloakChangeNotify uint16 = 1790
+ AvatarFollowRouteNotify uint16 = 3256
+ AvatarGainCostumeNotify uint16 = 1625
+ AvatarGainFlycloakNotify uint16 = 1676
+ AvatarLifeStateChangeNotify uint16 = 1247
+ AvatarPromoteGetRewardReq uint16 = 1684
+ AvatarPromoteGetRewardRsp uint16 = 1658
+ AvatarPromoteReq uint16 = 1731
+ AvatarPromoteRsp uint16 = 1710
+ AvatarPropChangeReasonNotify uint16 = 1278
+ AvatarPropNotify uint16 = 1227
+ AvatarRenameInfoNotify uint16 = 1797
+ AvatarSatiationDataNotify uint16 = 1766
+ AvatarSkillChangeNotify uint16 = 1099
+ AvatarSkillDepotChangeNotify uint16 = 1019
+ AvatarSkillInfoNotify uint16 = 1047
+ AvatarSkillMaxChargeCountNotify uint16 = 1061
+ AvatarSkillUpgradeReq uint16 = 1039
AvatarSkillUpgradeRsp uint16 = 1048
- AvatarTeamAllDataNotify uint16 = 1749
- AvatarTeamUpdateNotify uint16 = 1706
- AvatarUnlockTalentNotify uint16 = 1012
- AvatarUpgradeReq uint16 = 1770
- AvatarUpgradeRsp uint16 = 1701
- AvatarWearFlycloakReq uint16 = 1737
- AvatarWearFlycloakRsp uint16 = 1698
- BackMyWorldReq uint16 = 286
- BackMyWorldRsp uint16 = 201
- BackPlayCustomDungeonOfficialReq uint16 = 6203
- BackPlayCustomDungeonOfficialRsp uint16 = 6204
- BackRebornGalleryReq uint16 = 5593
- BackRebornGalleryRsp uint16 = 5527
- BargainOfferPriceReq uint16 = 493
- BargainOfferPriceRsp uint16 = 427
- BargainStartNotify uint16 = 404
- BargainTerminateNotify uint16 = 494
- BartenderCancelLevelReq uint16 = 8771
- BartenderCancelLevelRsp uint16 = 8686
- BartenderCancelOrderReq uint16 = 8442
- BartenderCancelOrderRsp uint16 = 8837
- BartenderCompleteOrderReq uint16 = 8414
- BartenderCompleteOrderRsp uint16 = 8125
- BartenderFinishLevelReq uint16 = 8227
- BartenderFinishLevelRsp uint16 = 8093
- BartenderGetFormulaReq uint16 = 8462
- BartenderGetFormulaRsp uint16 = 8842
- BartenderLevelProgressNotify uint16 = 8756
- BartenderStartLevelReq uint16 = 8507
- BartenderStartLevelRsp uint16 = 8402
- BattlePassAllDataNotify uint16 = 2626
- BattlePassBuySuccNotify uint16 = 2614
- BattlePassCurScheduleUpdateNotify uint16 = 2607
- BattlePassMissionDelNotify uint16 = 2625
- BattlePassMissionUpdateNotify uint16 = 2618
- BeginCameraSceneLookNotify uint16 = 270
- BeginCameraSceneLookWithTemplateNotify uint16 = 3160
- BigTalentPointConvertReq uint16 = 1007
- BigTalentPointConvertRsp uint16 = 1021
- BlessingAcceptAllGivePicReq uint16 = 2045
- BlessingAcceptAllGivePicRsp uint16 = 2044
- BlessingAcceptGivePicReq uint16 = 2006
- BlessingAcceptGivePicRsp uint16 = 2055
- BlessingGetAllRecvPicRecordListReq uint16 = 2096
- BlessingGetAllRecvPicRecordListRsp uint16 = 2083
- BlessingGetFriendPicListReq uint16 = 2043
- BlessingGetFriendPicListRsp uint16 = 2056
- BlessingGiveFriendPicReq uint16 = 2062
- BlessingGiveFriendPicRsp uint16 = 2053
- BlessingRecvFriendPicNotify uint16 = 2178
- BlessingRedeemRewardReq uint16 = 2137
- BlessingRedeemRewardRsp uint16 = 2098
- BlessingScanReq uint16 = 2081
- BlessingScanRsp uint16 = 2093
- BlitzRushParkourRestartReq uint16 = 8653
- BlitzRushParkourRestartRsp uint16 = 8944
- BlossomBriefInfoNotify uint16 = 2712
- BlossomChestCreateNotify uint16 = 2721
- BlossomChestInfoNotify uint16 = 890
+ AvatarTeamAllDataNotify uint16 = 1615
+ AvatarTeamUpdateNotify uint16 = 1739
+ AvatarUnlockTalentNotify uint16 = 1056
+ AvatarUpgradeReq uint16 = 1653
+ AvatarUpgradeRsp uint16 = 1792
+ AvatarWearFlycloakReq uint16 = 1636
+ AvatarWearFlycloakRsp uint16 = 1613
+ BackMyWorldReq uint16 = 269
+ BackMyWorldRsp uint16 = 218
+ BackPlayCustomDungeonOfficialReq uint16 = 6224
+ BackPlayCustomDungeonOfficialRsp uint16 = 6220
+ BackRebornGalleryReq uint16 = 5507
+ BackRebornGalleryRsp uint16 = 5517
+ BargainOfferPriceReq uint16 = 407
+ BargainOfferPriceRsp uint16 = 417
+ BargainStartNotify uint16 = 444
+ BargainTerminateNotify uint16 = 405
+ BartenderCancelLevelReq uint16 = 8446
+ BartenderCancelLevelRsp uint16 = 8698
+ BartenderCancelOrderReq uint16 = 8249
+ BartenderCancelOrderRsp uint16 = 8254
+ BartenderCompleteOrderReq uint16 = 8880
+ BartenderCompleteOrderRsp uint16 = 8870
+ BartenderFinishLevelReq uint16 = 8122
+ BartenderFinishLevelRsp uint16 = 8250
+ BartenderGetFormulaReq uint16 = 8230
+ BartenderGetFormulaRsp uint16 = 8975
+ BartenderLevelProgressNotify uint16 = 8415
+ BartenderStartLevelReq uint16 = 8590
+ BartenderStartLevelRsp uint16 = 8142
+ BatchBuyGoodsReq uint16 = 778
+ BatchBuyGoodsRsp uint16 = 757
+ BattlePassAllDataNotify uint16 = 2642
+ BattlePassBuySuccNotify uint16 = 2602
+ BattlePassCurScheduleUpdateNotify uint16 = 2635
+ BattlePassMissionDelNotify uint16 = 2622
+ BattlePassMissionUpdateNotify uint16 = 2641
+ BeginCameraSceneLookNotify uint16 = 249
+ BeginCameraSceneLookWithTemplateNotify uint16 = 3342
+ BigTalentPointConvertReq uint16 = 1100
+ BigTalentPointConvertRsp uint16 = 1043
+ BlessingAcceptAllGivePicReq uint16 = 2009
+ BlessingAcceptAllGivePicRsp uint16 = 2065
+ BlessingAcceptGivePicReq uint16 = 2153
+ BlessingAcceptGivePicRsp uint16 = 2010
+ BlessingGetAllRecvPicRecordListReq uint16 = 2084
+ BlessingGetAllRecvPicRecordListRsp uint16 = 2058
+ BlessingGetFriendPicListReq uint16 = 2190
+ BlessingGetFriendPicListRsp uint16 = 2076
+ BlessingGiveFriendPicReq uint16 = 2108
+ BlessingGiveFriendPicRsp uint16 = 2042
+ BlessingRecvFriendPicNotify uint16 = 2107
+ BlessingRedeemRewardReq uint16 = 2036
+ BlessingRedeemRewardRsp uint16 = 2013
+ BlessingScanReq uint16 = 2186
+ BlessingScanRsp uint16 = 2166
+ BlitzRushParkourRestartReq uint16 = 8986
+ BlitzRushParkourRestartRsp uint16 = 8453
+ BlossomBriefInfoNotify uint16 = 2756
+ BlossomChestCreateNotify uint16 = 2743
+ BlossomChestInfoNotify uint16 = 847
BonusActivityInfoReq uint16 = 2548
- BonusActivityInfoRsp uint16 = 2597
- BonusActivityUpdateNotify uint16 = 2575
- BossChestActivateNotify uint16 = 803
- BounceConjuringSettleNotify uint16 = 8084
- BuoyantCombatSettleNotify uint16 = 8305
- BuyBattlePassLevelReq uint16 = 2647
- BuyBattlePassLevelRsp uint16 = 2637
- BuyGoodsReq uint16 = 712
- BuyGoodsRsp uint16 = 735
- BuyResinReq uint16 = 602
- BuyResinRsp uint16 = 619
- CalcWeaponUpgradeReturnItemsReq uint16 = 633
- CalcWeaponUpgradeReturnItemsRsp uint16 = 684
- CanUseSkillNotify uint16 = 1005
- CancelCityReputationRequestReq uint16 = 2899
- CancelCityReputationRequestRsp uint16 = 2831
- CancelCoopTaskReq uint16 = 1997
- CancelCoopTaskRsp uint16 = 1987
- CancelFinishParentQuestNotify uint16 = 424
- CardProductRewardNotify uint16 = 4107
- CataLogFinishedGlobalWatcherAllDataNotify uint16 = 6370
- CataLogNewFinishedGlobalWatcherNotify uint16 = 6395
- ChallengeDataNotify uint16 = 953
- ChallengeRecordNotify uint16 = 993
- ChangeAvatarReq uint16 = 1640
- ChangeAvatarRsp uint16 = 1607
- ChangeCustomDungeonRoomReq uint16 = 6222
- ChangeCustomDungeonRoomRsp uint16 = 6244
- ChangeGameTimeReq uint16 = 173
- ChangeGameTimeRsp uint16 = 199
+ BonusActivityInfoRsp uint16 = 2599
+ BonusActivityUpdateNotify uint16 = 2539
+ BossChestActivateNotify uint16 = 861
+ BounceConjuringSettleNotify uint16 = 8653
+ BrickBreakerPlayerReadyNotify uint16 = 5396
+ BrickBreakerPlayerSetAvatarNotify uint16 = 5362
+ BrickBreakerPlayerSetChangingNotify uint16 = 5370
+ BrickBreakerPlayerSetSkillNotify uint16 = 5351
+ BrickBreakerQuitReq uint16 = 24991
+ BrickBreakerQuitRsp uint16 = 24959
+ BrickBreakerSelectAvatarReq uint16 = 5368
+ BrickBreakerSelectAvatarRsp uint16 = 5359
+ BrickBreakerSelectSkillReq uint16 = 5329
+ BrickBreakerSelectSkillRsp uint16 = 5386
+ BrickBreakerSetChangingReq uint16 = 5358
+ BrickBreakerSetChangingRsp uint16 = 5314
+ BrickBreakerSetReadyReq uint16 = 5371
+ BrickBreakerSetReadyRsp uint16 = 5332
+ BrickBreakerSettleNotify uint16 = 23886
+ BrickBreakerTwiceStartReq uint16 = 24700
+ BrickBreakerTwiceStartRsp uint16 = 20232
+ BuoyantCombatSettleNotify uint16 = 8751
+ BuyBattlePassLevelReq uint16 = 2643
+ BuyBattlePassLevelRsp uint16 = 2609
+ BuyGoodsReq uint16 = 756
+ BuyGoodsRsp uint16 = 719
+ BuyResinReq uint16 = 693
+ BuyResinRsp uint16 = 654
+ CalcWeaponUpgradeReturnItemsReq uint16 = 666
+ CalcWeaponUpgradeReturnItemsRsp uint16 = 652
+ CancelCityReputationRequestReq uint16 = 2857
+ CancelCityReputationRequestRsp uint16 = 2827
+ CancelCoopTaskReq uint16 = 1993
+ CancelCoopTaskRsp uint16 = 1959
+ CancelFinishParentQuestNotify uint16 = 422
+ CanUseSkillNotify uint16 = 1042
+ CardProductRewardNotify uint16 = 4135
+ CataLogFinishedGlobalWatcherAllDataNotify uint16 = 6365
+ CataLogNewFinishedGlobalWatcherNotify uint16 = 6368
+ ChallengeDataNotify uint16 = 973
+ ChallengeRecordNotify uint16 = 907
+ ChangeAvatarReq uint16 = 1682
+ ChangeAvatarRsp uint16 = 1699
+ ChangeCustomDungeonRoomReq uint16 = 6217
+ ChangeCustomDungeonRoomRsp uint16 = 6212
+ ChangeGameTimeReq uint16 = 178
+ ChangeGameTimeRsp uint16 = 157
ChangeMailStarNotify uint16 = 1448
- ChangeMpTeamAvatarReq uint16 = 1708
- ChangeMpTeamAvatarRsp uint16 = 1753
- ChangeServerGlobalValueNotify uint16 = 27
- ChangeTeamNameReq uint16 = 1603
- ChangeTeamNameRsp uint16 = 1666
- ChangeWidgetBackgroundActiveStateReq uint16 = 5907
- ChangeWidgetBackgroundActiveStateRsp uint16 = 6060
- ChangeWorldToSingleModeNotify uint16 = 3006
- ChangeWorldToSingleModeReq uint16 = 3066
- ChangeWorldToSingleModeRsp uint16 = 3282
- ChannelerSlabCheckEnterLoopDungeonReq uint16 = 8745
- ChannelerSlabCheckEnterLoopDungeonRsp uint16 = 8452
- ChannelerSlabEnterLoopDungeonReq uint16 = 8869
- ChannelerSlabEnterLoopDungeonRsp uint16 = 8081
- ChannelerSlabLoopDungeonChallengeInfoNotify uint16 = 8224
- ChannelerSlabLoopDungeonSelectConditionReq uint16 = 8503
- ChannelerSlabLoopDungeonSelectConditionRsp uint16 = 8509
- ChannelerSlabLoopDungeonTakeFirstPassRewardReq uint16 = 8589
- ChannelerSlabLoopDungeonTakeFirstPassRewardRsp uint16 = 8539
- ChannelerSlabLoopDungeonTakeScoreRewardReq uint16 = 8684
- ChannelerSlabLoopDungeonTakeScoreRewardRsp uint16 = 8433
- ChannelerSlabOneOffDungeonInfoNotify uint16 = 8729
- ChannelerSlabOneOffDungeonInfoReq uint16 = 8409
- ChannelerSlabOneOffDungeonInfoRsp uint16 = 8268
- ChannelerSlabSaveAssistInfoReq uint16 = 8416
- ChannelerSlabSaveAssistInfoRsp uint16 = 8932
- ChannelerSlabStageActiveChallengeIndexNotify uint16 = 8734
- ChannelerSlabStageOneofDungeonNotify uint16 = 8203
- ChannelerSlabTakeoffBuffReq uint16 = 8516
- ChannelerSlabTakeoffBuffRsp uint16 = 8237
- ChannelerSlabWearBuffReq uint16 = 8107
- ChannelerSlabWearBuffRsp uint16 = 8600
- ChapterStateNotify uint16 = 405
- CharAmusementSettleNotify uint16 = 23133
+ ChangeMpTeamAvatarReq uint16 = 1645
+ ChangeMpTeamAvatarRsp uint16 = 1730
+ ChangeServerGlobalValueNotify uint16 = 17
+ ChangeTeamNameReq uint16 = 1706
+ ChangeTeamNameRsp uint16 = 1696
+ ChangeWidgetBackgroundActiveStateReq uint16 = 5959
+ ChangeWidgetBackgroundActiveStateRsp uint16 = 5955
+ ChangeWorldToSingleModeNotify uint16 = 3461
+ ChangeWorldToSingleModeReq uint16 = 3296
+ ChangeWorldToSingleModeRsp uint16 = 3258
+ ChannelerSlabCheckEnterLoopDungeonReq uint16 = 8286
+ ChannelerSlabCheckEnterLoopDungeonRsp uint16 = 8631
+ ChannelerSlabEnterLoopDungeonReq uint16 = 8564
+ ChannelerSlabEnterLoopDungeonRsp uint16 = 8526
+ ChannelerSlabLoopDungeonChallengeInfoNotify uint16 = 8576
+ ChannelerSlabLoopDungeonSelectConditionReq uint16 = 8659
+ ChannelerSlabLoopDungeonSelectConditionRsp uint16 = 8858
+ ChannelerSlabLoopDungeonTakeFirstPassRewardReq uint16 = 8498
+ ChannelerSlabLoopDungeonTakeFirstPassRewardRsp uint16 = 8824
+ ChannelerSlabLoopDungeonTakeScoreRewardReq uint16 = 8348
+ ChannelerSlabLoopDungeonTakeScoreRewardRsp uint16 = 8369
+ ChannelerSlabOneOffDungeonInfoNotify uint16 = 8015
+ ChannelerSlabOneOffDungeonInfoReq uint16 = 8877
+ ChannelerSlabOneOffDungeonInfoRsp uint16 = 8270
+ ChannelerSlabSaveAssistInfoReq uint16 = 8039
+ ChannelerSlabSaveAssistInfoRsp uint16 = 8071
+ ChannelerSlabStageActiveChallengeIndexNotify uint16 = 8857
+ ChannelerSlabStageOneoffDungeonNotify uint16 = 8692
+ ChannelerSlabTakeoffBuffReq uint16 = 8299
+ ChannelerSlabTakeoffBuffRsp uint16 = 8034
+ ChannelerSlabWearBuffReq uint16 = 8664
+ ChannelerSlabWearBuffRsp uint16 = 8285
+ ChapterStateNotify uint16 = 442
+ CharAmusementSettleNotify uint16 = 23128
ChatChannelDataNotify uint16 = 4998
- ChatChannelUpdateNotify uint16 = 5025
- ChatHistoryNotify uint16 = 3496
- CheckAddItemExceedLimitNotify uint16 = 692
- CheckGroupReplacedReq uint16 = 3113
- CheckGroupReplacedRsp uint16 = 3152
- CheckSegmentCRCNotify uint16 = 39
- CheckSegmentCRCReq uint16 = 53
- CheckUgcStateReq uint16 = 6342
- CheckUgcStateRsp uint16 = 6314
- CheckUgcUpdateReq uint16 = 6320
- CheckUgcUpdateRsp uint16 = 6345
- ChessEscapedMonstersNotify uint16 = 5314
- ChessLeftMonstersNotify uint16 = 5360
- ChessManualRefreshCardsReq uint16 = 5389
- ChessManualRefreshCardsRsp uint16 = 5359
- ChessPickCardNotify uint16 = 5380
- ChessPickCardReq uint16 = 5333
- ChessPickCardRsp uint16 = 5384
- ChessPlayerInfoNotify uint16 = 5332
- ChessSelectedCardsNotify uint16 = 5392
- ChooseCurAvatarTeamReq uint16 = 1796
- ChooseCurAvatarTeamRsp uint16 = 1661
- CityReputationDataNotify uint16 = 2805
- CityReputationLevelupNotify uint16 = 2807
- ClearRoguelikeCurseNotify uint16 = 8207
- ClientAIStateNotify uint16 = 1181
- ClientAbilitiesInitFinishCombineNotify uint16 = 1103
- ClientAbilityChangeNotify uint16 = 1175
- ClientAbilityInitBeginNotify uint16 = 1112
- ClientAbilityInitFinishNotify uint16 = 1135
- ClientBulletCreateNotify uint16 = 4
- ClientCollectorDataNotify uint16 = 4264
- ClientHashDebugNotify uint16 = 3086
- ClientLoadingCostumeVerificationNotify uint16 = 3487
- ClientLockGameTimeNotify uint16 = 114
- ClientNewMailNotify uint16 = 1499
- ClientPauseNotify uint16 = 260
- ClientReconnectNotify uint16 = 75
- ClientRemoveCombatEndModifierNotify uint16 = 1182
- ClientReportNotify uint16 = 81
- ClientScriptEventNotify uint16 = 213
- ClientTransmitReq uint16 = 291
- ClientTransmitRsp uint16 = 224
+ ChatChannelInfoNotify uint16 = 4975
+ ChatChannelShieldNotify uint16 = 5049
+ ChatChannelUpdateNotify uint16 = 4989
+ ChatHistoryNotify uint16 = 3309
+ CheckAddItemExceedLimitNotify uint16 = 697
+ CheckGroupReplacedReq uint16 = 3056
+ CheckGroupReplacedRsp uint16 = 3411
+ CheckSegmentCRCNotify uint16 = 16
+ CheckSegmentCRCReq uint16 = 73
+ CheckUgcStateReq uint16 = 6345
+ CheckUgcStateRsp uint16 = 6302
+ CheckUgcUpdateReq uint16 = 6315
+ CheckUgcUpdateRsp uint16 = 6318
+ ChessEscapedMonstersNotify uint16 = 5341
+ ChessLeftMonstersNotify uint16 = 5336
+ ChessManualRefreshCardsReq uint16 = 5326
+ ChessManualRefreshCardsRsp uint16 = 5377
+ ChessPickCardNotify uint16 = 5374
+ ChessPickCardReq uint16 = 5366
+ ChessPickCardRsp uint16 = 5352
+ ChessPlayerInfoNotify uint16 = 5365
+ ChessSelectedCardsNotify uint16 = 5397
+ ChooseCurAvatarTeamReq uint16 = 1738
+ ChooseCurAvatarTeamRsp uint16 = 1778
+ CityReputationDataNotify uint16 = 2842
+ CityReputationLevelupNotify uint16 = 2900
+ ClearRoguelikeCurseNotify uint16 = 8038
+ ClientAbilitiesInitFinishCombineNotify uint16 = 1161
+ ClientAbilityChangeNotify uint16 = 1139
+ ClientAbilityInitBeginNotify uint16 = 1156
+ ClientAbilityInitFinishNotify uint16 = 1119
+ ClientAIStateNotify uint16 = 1125
+ ClientBulletCreateNotify uint16 = 44
+ ClientCollectorDataNotify uint16 = 4252
+ ClientHashDebugNotify uint16 = 3287
+ ClientLoadingCostumeVerificationNotify uint16 = 3269
+ ClientLockGameTimeNotify uint16 = 141
+ ClientNewMailNotify uint16 = 1457
+ ClientPauseNotify uint16 = 236
+ ClientReconnectNotify uint16 = 39
+ ClientRemoveCombatEndModifierNotify uint16 = 1190
+ ClientReportNotify uint16 = 25
+ ClientScriptEventNotify uint16 = 260
+ ClientTransmitReq uint16 = 221
+ ClientTransmitRsp uint16 = 222
ClientTriggerEventNotify uint16 = 148
- CloseCommonTipsNotify uint16 = 3194
- ClosedItemNotify uint16 = 614
- CodexDataFullNotify uint16 = 4205
- CodexDataUpdateNotify uint16 = 4207
- CombatInvocationsNotify uint16 = 319
- CombineDataNotify uint16 = 659
- CombineFormulaDataNotify uint16 = 632
- CombineReq uint16 = 643
- CombineRsp uint16 = 674
- CommonPlayerTipsNotify uint16 = 8466
- CompoundDataNotify uint16 = 146
- CompoundUnlockNotify uint16 = 128
- CookDataNotify uint16 = 195
- CookGradeDataNotify uint16 = 134
- CookRecipeDataNotify uint16 = 106
- CoopCgShowNotify uint16 = 1983
- CoopCgUpdateNotify uint16 = 1994
- CoopChapterUpdateNotify uint16 = 1972
- CoopDataNotify uint16 = 1979
- CoopPointUpdateNotify uint16 = 1991
- CoopProgressUpdateNotify uint16 = 1998
- CoopRewardUpdateNotify uint16 = 1999
- CreateMassiveEntityNotify uint16 = 367
- CreateMassiveEntityReq uint16 = 342
- CreateMassiveEntityRsp uint16 = 330
- CreateVehicleReq uint16 = 893
- CreateVehicleRsp uint16 = 827
- CrystalLinkDungeonInfoNotify uint16 = 8858
- CrystalLinkEnterDungeonReq uint16 = 8325
- CrystalLinkEnterDungeonRsp uint16 = 8147
- CrystalLinkRestartDungeonReq uint16 = 8022
- CrystalLinkRestartDungeonRsp uint16 = 8119
- CustomDungeonBattleRecordNotify uint16 = 6236
- CustomDungeonOfficialNotify uint16 = 6221
- CustomDungeonRecoverNotify uint16 = 6217
- CustomDungeonUpdateNotify uint16 = 6223
- CutSceneBeginNotify uint16 = 296
- CutSceneEndNotify uint16 = 215
- CutSceneFinishNotify uint16 = 262
- DailyTaskDataNotify uint16 = 158
- DailyTaskFilterCityReq uint16 = 111
- DailyTaskFilterCityRsp uint16 = 144
- DailyTaskProgressNotify uint16 = 170
- DailyTaskScoreRewardNotify uint16 = 117
- DailyTaskUnlockedCitiesNotify uint16 = 186
- DataResVersionNotify uint16 = 167
- DealAddFriendReq uint16 = 4003
- DealAddFriendRsp uint16 = 4090
- DeathZoneInfoNotify uint16 = 6268
- DeathZoneObserveNotify uint16 = 3475
+ CloseCommonTipsNotify uint16 = 3273
+ ClosedItemNotify uint16 = 641
+ CodexDataFullNotify uint16 = 4201
+ CodexDataUpdateNotify uint16 = 4203
+ CoinCollectCheckDoubleStartPlayReq uint16 = 22424
+ CoinCollectCheckDoubleStartPlayRsp uint16 = 24124
+ CoinCollectChooseSkillReq uint16 = 21667
+ CoinCollectChooseSkillRsp uint16 = 23416
+ CoinCollectGallerySettleNotify uint16 = 5546
+ CoinCollectInterruptPlayReq uint16 = 20562
+ CoinCollectInterruptPlayRsp uint16 = 23589
+ CoinCollectPrepareReq uint16 = 23071
+ CoinCollectPrepareRsp uint16 = 23817
+ CoinCollectPrepareStageNotify uint16 = 6408
+ CombatInvocationsNotify uint16 = 354
+ CombineDataNotify uint16 = 677
+ CombineFormulaDataNotify uint16 = 665
+ CombineReq uint16 = 675
+ CombineRsp uint16 = 634
+ CommonPlayerTipsNotify uint16 = 8167
+ CompoundDataNotify uint16 = 164
+ CompoundUnlockNotify uint16 = 106
+ CookDataNotify uint16 = 133
+ CookGradeDataNotify uint16 = 180
+ CookRecipeDataNotify uint16 = 110
+ CoopCgShowNotify uint16 = 1951
+ CoopCgUpdateNotify uint16 = 1962
+ CoopChapterUpdateNotify uint16 = 1967
+ CoopDataNotify uint16 = 1994
+ CoopPointUpdateNotify uint16 = 1958
+ CoopProgressUpdateNotify uint16 = 1987
+ CoopRewardUpdateNotify uint16 = 1984
+ CreateMassiveEntityNotify uint16 = 353
+ CreateMassiveEntityReq uint16 = 311
+ CreateMassiveEntityRsp uint16 = 350
+ CreateVehicleReq uint16 = 807
+ CreateVehicleRsp uint16 = 817
+ CrystalLinkDungeonInfoNotify uint16 = 8408
+ CrystalLinkEnterDungeonReq uint16 = 8179
+ CrystalLinkEnterDungeonRsp uint16 = 8628
+ CrystalLinkRestartDungeonReq uint16 = 8177
+ CrystalLinkRestartDungeonRsp uint16 = 8741
+ CustomDungeonBattleRecordNotify uint16 = 6225
+ CustomDungeonOfficialNotify uint16 = 6236
+ CustomDungeonRecoverNotify uint16 = 6228
+ CustomDungeonUpdateNotify uint16 = 6230
+ CutSceneBeginNotify uint16 = 283
+ CutSceneEndNotify uint16 = 281
+ CutSceneFinishNotify uint16 = 284
+ DailyTaskDataNotify uint16 = 124
+ DailyTaskFilterCityReq uint16 = 101
+ DailyTaskFilterCityRsp uint16 = 138
+ DailyTaskProgressNotify uint16 = 149
+ DailyTaskScoreRewardNotify uint16 = 191
+ DailyTaskUnlockedCitiesNotify uint16 = 169
+ DataResVersionNotify uint16 = 153
+ DealAddFriendReq uint16 = 4061
+ DealAddFriendRsp uint16 = 4047
+ DeathZoneInfoNotify uint16 = 6291
+ DeathZoneObserveNotify uint16 = 3062
DebugNotify uint16 = 101
- DelBackupAvatarTeamReq uint16 = 1731
- DelBackupAvatarTeamRsp uint16 = 1729
- DelMailReq uint16 = 1421
- DelMailRsp uint16 = 1403
- DelScenePlayTeamEntityNotify uint16 = 3318
- DelTeamEntityNotify uint16 = 302
- DeleteFriendNotify uint16 = 4053
- DeleteFriendReq uint16 = 4031
- DeleteFriendRsp uint16 = 4075
- DeshretObeliskChestInfoNotify uint16 = 841
- DestroyMassiveEntityNotify uint16 = 358
- DestroyMaterialReq uint16 = 640
- DestroyMaterialRsp uint16 = 618
- DigActivityChangeGadgetStateReq uint16 = 8464
- DigActivityChangeGadgetStateRsp uint16 = 8430
- DigActivityMarkPointChangeNotify uint16 = 8109
- DisableRoguelikeTrapNotify uint16 = 8259
- DoGachaReq uint16 = 1512
- DoGachaRsp uint16 = 1535
- DoRoguelikeDungeonCardGachaReq uint16 = 8148
- DoRoguelikeDungeonCardGachaRsp uint16 = 8472
- DoSetPlayerBornDataNotify uint16 = 147
- DraftGuestReplyInviteNotify uint16 = 5490
- DraftGuestReplyInviteReq uint16 = 5421
- DraftGuestReplyInviteRsp uint16 = 5403
- DraftGuestReplyTwiceConfirmNotify uint16 = 5497
- DraftGuestReplyTwiceConfirmReq uint16 = 5431
- DraftGuestReplyTwiceConfirmRsp uint16 = 5475
- DraftInviteResultNotify uint16 = 5473
- DraftOwnerInviteNotify uint16 = 5407
- DraftOwnerStartInviteReq uint16 = 5412
- DraftOwnerStartInviteRsp uint16 = 5435
- DraftOwnerTwiceConfirmNotify uint16 = 5499
+ DelBackupAvatarTeamReq uint16 = 1698
+ DelBackupAvatarTeamRsp uint16 = 1666
+ DeleteFriendNotify uint16 = 4073
+ DeleteFriendReq uint16 = 4027
+ DeleteFriendRsp uint16 = 4039
+ DelMailReq uint16 = 1443
+ DelMailRsp uint16 = 1461
+ DelScenePlayTeamEntityNotify uint16 = 3237
+ DelTeamEntityNotify uint16 = 393
+ DeshretObeliskChestInfoNotify uint16 = 867
+ DestroyMassiveEntityNotify uint16 = 324
+ DestroyMaterialReq uint16 = 685
+ DestroyMaterialRsp uint16 = 608
+ DigActivityChangeGadgetStateReq uint16 = 8372
+ DigActivityChangeGadgetStateRsp uint16 = 8289
+ DigActivityMarkPointChangeNotify uint16 = 8871
+ DisableRoguelikeTrapNotify uint16 = 8839
+ DoGachaReq uint16 = 1556
+ DoGachaRsp uint16 = 1519
+ DoRoguelikeDungeonCardGachaReq uint16 = 8740
+ DoRoguelikeDungeonCardGachaRsp uint16 = 8144
+ DoSetPlayerBornDataNotify uint16 = 176
+ DraftGuestReplyInviteNotify uint16 = 5447
+ DraftGuestReplyInviteReq uint16 = 5443
+ DraftGuestReplyInviteRsp uint16 = 5461
+ DraftGuestReplyTwiceConfirmNotify uint16 = 5499
+ DraftGuestReplyTwiceConfirmReq uint16 = 5427
+ DraftGuestReplyTwiceConfirmRsp uint16 = 5439
+ DraftInviteResultNotify uint16 = 5478
+ DraftOwnerInviteNotify uint16 = 5500
+ DraftOwnerStartInviteReq uint16 = 5456
+ DraftOwnerStartInviteRsp uint16 = 5419
+ DraftOwnerTwiceConfirmNotify uint16 = 5457
DraftTwiceConfirmResultNotify uint16 = 5448
- DragonSpineChapterFinishNotify uint16 = 2069
- DragonSpineChapterOpenNotify uint16 = 2022
- DragonSpineChapterProgressChangeNotify uint16 = 2065
- DragonSpineCoinChangeNotify uint16 = 2088
- DropHintNotify uint16 = 650
- DropItemReq uint16 = 699
- DropItemRsp uint16 = 631
- DungeonCandidateTeamChangeAvatarReq uint16 = 956
- DungeonCandidateTeamChangeAvatarRsp uint16 = 942
- DungeonCandidateTeamCreateReq uint16 = 995
- DungeonCandidateTeamCreateRsp uint16 = 906
- DungeonCandidateTeamDismissNotify uint16 = 963
- DungeonCandidateTeamInfoNotify uint16 = 927
- DungeonCandidateTeamInviteNotify uint16 = 994
- DungeonCandidateTeamInviteReq uint16 = 934
- DungeonCandidateTeamInviteRsp uint16 = 950
- DungeonCandidateTeamKickReq uint16 = 943
- DungeonCandidateTeamKickRsp uint16 = 974
- DungeonCandidateTeamLeaveReq uint16 = 976
- DungeonCandidateTeamLeaveRsp uint16 = 946
- DungeonCandidateTeamPlayerLeaveNotify uint16 = 926
- DungeonCandidateTeamRefuseNotify uint16 = 988
- DungeonCandidateTeamReplyInviteReq uint16 = 941
- DungeonCandidateTeamReplyInviteRsp uint16 = 949
- DungeonCandidateTeamSetChangingAvatarReq uint16 = 918
- DungeonCandidateTeamSetChangingAvatarRsp uint16 = 966
- DungeonCandidateTeamSetReadyReq uint16 = 991
- DungeonCandidateTeamSetReadyRsp uint16 = 924
- DungeonChallengeBeginNotify uint16 = 947
- DungeonChallengeFinishNotify uint16 = 939
- DungeonDataNotify uint16 = 982
- DungeonDieOptionReq uint16 = 975
+ DragonSpineChapterFinishNotify uint16 = 2149
+ DragonSpineChapterOpenNotify uint16 = 2123
+ DragonSpineChapterProgressChangeNotify uint16 = 2035
+ DragonSpineCoinChangeNotify uint16 = 2086
+ DropHintNotify uint16 = 646
+ DropItemReq uint16 = 657
+ DropItemRsp uint16 = 627
+ DungeonCandidateTeamChangeAvatarReq uint16 = 982
+ DungeonCandidateTeamChangeAvatarRsp uint16 = 911
+ DungeonCandidateTeamCreateReq uint16 = 933
+ DungeonCandidateTeamCreateRsp uint16 = 910
+ DungeonCandidateTeamDismissNotify uint16 = 903
+ DungeonCandidateTeamInfoNotify uint16 = 917
+ DungeonCandidateTeamInviteNotify uint16 = 905
+ DungeonCandidateTeamInviteReq uint16 = 980
+ DungeonCandidateTeamInviteRsp uint16 = 946
+ DungeonCandidateTeamKickReq uint16 = 975
+ DungeonCandidateTeamKickRsp uint16 = 934
+ DungeonCandidateTeamLeaveReq uint16 = 995
+ DungeonCandidateTeamLeaveRsp uint16 = 964
+ DungeonCandidateTeamPlayerLeaveNotify uint16 = 972
+ DungeonCandidateTeamRefuseNotify uint16 = 994
+ DungeonCandidateTeamReplyInviteReq uint16 = 967
+ DungeonCandidateTeamReplyInviteRsp uint16 = 915
+ DungeonCandidateTeamSetChangingAvatarReq uint16 = 908
+ DungeonCandidateTeamSetChangingAvatarRsp uint16 = 909
+ DungeonCandidateTeamSetReadyReq uint16 = 921
+ DungeonCandidateTeamSetReadyRsp uint16 = 922
+ DungeonChallengeBeginNotify uint16 = 976
+ DungeonChallengeFinishNotify uint16 = 916
+ DungeonDataNotify uint16 = 990
+ DungeonDieOptionReq uint16 = 939
DungeonDieOptionRsp uint16 = 948
- DungeonEntryInfoReq uint16 = 972
- DungeonEntryInfoRsp uint16 = 998
- DungeonEntryToBeExploreNotify uint16 = 3147
- DungeonFollowNotify uint16 = 922
- DungeonGetStatueDropReq uint16 = 965
- DungeonGetStatueDropRsp uint16 = 904
- DungeonInterruptChallengeReq uint16 = 917
- DungeonInterruptChallengeRsp uint16 = 902
- DungeonPlayerDieNotify uint16 = 931
- DungeonPlayerDieReq uint16 = 981
- DungeonPlayerDieRsp uint16 = 905
- DungeonRestartInviteNotify uint16 = 957
+ DungeonEntryInfoReq uint16 = 979
+ DungeonEntryInfoRsp uint16 = 930
+ DungeonEntryToBeExploreNotify uint16 = 3196
+ DungeonFollowNotify uint16 = 937
+ DungeonGetStatueDropReq uint16 = 989
+ DungeonGetStatueDropRsp uint16 = 944
+ DungeonInterruptChallengeReq uint16 = 991
+ DungeonInterruptChallengeRsp uint16 = 993
+ DungeonPlayerDieNotify uint16 = 927
+ DungeonPlayerDieReq uint16 = 925
+ DungeonPlayerDieRsp uint16 = 942
+ DungeonRestartInviteNotify uint16 = 963
DungeonRestartInviteReplyNotify uint16 = 987
- DungeonRestartInviteReplyReq uint16 = 1000
- DungeonRestartInviteReplyRsp uint16 = 916
- DungeonRestartReq uint16 = 961
- DungeonRestartResultNotify uint16 = 940
- DungeonRestartRsp uint16 = 929
- DungeonReviseLevelNotify uint16 = 933
- DungeonSettleNotify uint16 = 999
- DungeonShowReminderNotify uint16 = 997
- DungeonSlipRevivePointActivateReq uint16 = 958
- DungeonSlipRevivePointActivateRsp uint16 = 970
- DungeonWayPointActivateReq uint16 = 990
- DungeonWayPointActivateRsp uint16 = 973
- DungeonWayPointNotify uint16 = 903
- EchoNotify uint16 = 65
- EchoShellTakeRewardReq uint16 = 8114
- EchoShellTakeRewardRsp uint16 = 8797
- EchoShellUpdateNotify uint16 = 8150
- EffigyChallengeInfoNotify uint16 = 2090
- EffigyChallengeResultNotify uint16 = 2046
- EffigyChallengeV2ChooseSkillReq uint16 = 21269
- EffigyChallengeV2ChooseSkillRsp uint16 = 22448
- EffigyChallengeV2DungeonInfoNotify uint16 = 22835
- EffigyChallengeV2EnterDungeonReq uint16 = 23489
- EffigyChallengeV2EnterDungeonRsp uint16 = 24917
- EffigyChallengeV2RestartDungeonReq uint16 = 24522
- EffigyChallengeV2RestartDungeonRsp uint16 = 23167
- EndCameraSceneLookNotify uint16 = 217
- EnterChessDungeonReq uint16 = 8191
- EnterChessDungeonRsp uint16 = 8592
- EnterCustomDungeonReq uint16 = 6226
- EnterCustomDungeonRsp uint16 = 6218
- EnterFishingReq uint16 = 5826
- EnterFishingRsp uint16 = 5818
- EnterFungusFighterPlotDungeonReq uint16 = 23053
- EnterFungusFighterPlotDungeonRsp uint16 = 21008
- EnterFungusFighterTrainingDungeonReq uint16 = 23860
- EnterFungusFighterTrainingDungeonRsp uint16 = 21593
- EnterIrodoriChessDungeonReq uint16 = 8717
- EnterIrodoriChessDungeonRsp uint16 = 8546
- EnterMechanicusDungeonReq uint16 = 3931
- EnterMechanicusDungeonRsp uint16 = 3975
- EnterRogueDiaryDungeonReq uint16 = 8943
- EnterRogueDiaryDungeonRsp uint16 = 8352
- EnterRoguelikeDungeonNotify uint16 = 8652
- EnterSceneDoneReq uint16 = 277
- EnterSceneDoneRsp uint16 = 237
- EnterScenePeerNotify uint16 = 252
- EnterSceneReadyReq uint16 = 208
- EnterSceneReadyRsp uint16 = 209
- EnterSceneWeatherAreaNotify uint16 = 256
- EnterTransPointRegionNotify uint16 = 205
- EnterTrialAvatarActivityDungeonReq uint16 = 2118
- EnterTrialAvatarActivityDungeonRsp uint16 = 2183
- EnterWorldAreaReq uint16 = 250
- EnterWorldAreaRsp uint16 = 243
- EntityAiKillSelfNotify uint16 = 340
- EntityAiSyncNotify uint16 = 400
- EntityAuthorityChangeNotify uint16 = 394
- EntityConfigHashNotify uint16 = 3189
- EntityFightPropChangeReasonNotify uint16 = 1203
- EntityFightPropNotify uint16 = 1212
- EntityFightPropUpdateNotify uint16 = 1235
- EntityForceSyncReq uint16 = 274
- EntityForceSyncRsp uint16 = 276
- EntityJumpNotify uint16 = 222
- EntityMoveRoomNotify uint16 = 3178
- EntityPropNotify uint16 = 1272
- EntityTagChangeNotify uint16 = 3316
- EquipRoguelikeRuneReq uint16 = 8306
- EquipRoguelikeRuneRsp uint16 = 8705
- EvtAiSyncCombatThreatInfoNotify uint16 = 329
- EvtAiSyncSkillCdNotify uint16 = 376
- EvtAnimatorParameterNotify uint16 = 398
- EvtAnimatorStateChangedNotify uint16 = 331
- EvtAvatarEnterFocusNotify uint16 = 304
- EvtAvatarExitFocusNotify uint16 = 393
- EvtAvatarLockChairReq uint16 = 318
- EvtAvatarLockChairRsp uint16 = 366
- EvtAvatarSitDownNotify uint16 = 324
- EvtAvatarStandUpNotify uint16 = 356
- EvtAvatarUpdateFocusNotify uint16 = 327
- EvtBeingHealedNotify uint16 = 333
- EvtBeingHitNotify uint16 = 372
- EvtBeingHitsCombineNotify uint16 = 346
- EvtBulletDeactiveNotify uint16 = 397
+ DungeonRestartInviteReplyReq uint16 = 904
+ DungeonRestartInviteReplyRsp uint16 = 923
+ DungeonRestartReq uint16 = 998
+ DungeonRestartResultNotify uint16 = 985
+ DungeonRestartRsp uint16 = 920
+ DungeonReviseLevelNotify uint16 = 966
+ DungeonSettleNotify uint16 = 957
+ DungeonShowReminderNotify uint16 = 999
+ DungeonSlipRevivePointActivateReq uint16 = 924
+ DungeonSlipRevivePointActivateRsp uint16 = 949
+ DungeonWayPointActivateReq uint16 = 947
+ DungeonWayPointActivateRsp uint16 = 978
+ DungeonWayPointNotify uint16 = 961
+ EchoNotify uint16 = 89
+ EchoShellTakeRewardReq uint16 = 8049
+ EchoShellTakeRewardRsp uint16 = 8265
+ EchoShellUpdateNotify uint16 = 8891
+ EffigyChallengeInfoNotify uint16 = 2113
+ EffigyChallengeResultNotify uint16 = 2022
+ EffigyChallengeV2ChooseSkillReq uint16 = 23748
+ EffigyChallengeV2ChooseSkillRsp uint16 = 23618
+ EffigyChallengeV2DungeonInfoNotify uint16 = 24761
+ EffigyChallengeV2EnterDungeonReq uint16 = 21069
+ EffigyChallengeV2EnterDungeonRsp uint16 = 22024
+ EffigyChallengeV2RestartDungeonReq uint16 = 21293
+ EffigyChallengeV2RestartDungeonRsp uint16 = 23467
+ EndCameraSceneLookNotify uint16 = 291
+ EndCoinCollectPlaySingleModeReq uint16 = 23963
+ EndCoinCollectPlaySingleModeRsp uint16 = 21015
+ EnterChessDungeonReq uint16 = 8855
+ EnterChessDungeonRsp uint16 = 8293
+ EnterCustomDungeonReq uint16 = 6242
+ EnterCustomDungeonRsp uint16 = 6241
+ EnterFishingReq uint16 = 5842
+ EnterFishingRsp uint16 = 5841
+ EnterFungusFighterPlotDungeonReq uint16 = 23768
+ EnterFungusFighterPlotDungeonRsp uint16 = 20791
+ EnterFungusFighterTrainingDungeonReq uint16 = 23992
+ EnterFungusFighterTrainingDungeonRsp uint16 = 22876
+ EnterIrodoriChessDungeonReq uint16 = 8592
+ EnterIrodoriChessDungeonRsp uint16 = 8238
+ EnterMechanicusDungeonReq uint16 = 3927
+ EnterMechanicusDungeonRsp uint16 = 3939
+ EnterRogueDiaryDungeonReq uint16 = 8627
+ EnterRogueDiaryDungeonRsp uint16 = 8152
+ EnterRoguelikeDungeonNotify uint16 = 8657
+ EnterSceneDoneReq uint16 = 232
+ EnterSceneDoneRsp uint16 = 268
+ EnterScenePeerNotify uint16 = 271
+ EnterSceneReadyReq uint16 = 262
+ EnterSceneReadyRsp uint16 = 251
+ EnterSceneWeatherAreaNotify uint16 = 282
+ EnterTransPointRegionNotify uint16 = 242
+ EnterTrialAvatarActivityDungeonReq uint16 = 2142
+ EnterTrialAvatarActivityDungeonRsp uint16 = 2176
+ EnterWorldAreaReq uint16 = 246
+ EnterWorldAreaRsp uint16 = 275
+ EntityAiKillSelfNotify uint16 = 385
+ EntityAiSyncNotify uint16 = 304
+ EntityAuthorityChangeNotify uint16 = 305
+ EntityConfigHashNotify uint16 = 3332
+ EntityFightPropChangeReasonNotify uint16 = 1261
+ EntityFightPropNotify uint16 = 1256
+ EntityFightPropUpdateNotify uint16 = 1219
+ EntityForceSyncReq uint16 = 234
+ EntityForceSyncRsp uint16 = 295
+ EntityJumpNotify uint16 = 237
+ EntityMoveRoomNotify uint16 = 3337
+ EntityPropNotify uint16 = 1279
+ EntityTagChangeNotify uint16 = 3192
+ EquipRoguelikeRuneReq uint16 = 8357
+ EquipRoguelikeRuneRsp uint16 = 8815
+ EvtAiSyncCombatThreatInfoNotify uint16 = 320
+ EvtAiSyncSkillCdNotify uint16 = 395
+ EvtAnimatorParameterNotify uint16 = 330
+ EvtAnimatorStateChangedNotify uint16 = 327
+ EvtAvatarEnterFocusNotify uint16 = 344
+ EvtAvatarExitFocusNotify uint16 = 307
+ EvtAvatarLockChairReq uint16 = 308
+ EvtAvatarLockChairRsp uint16 = 309
+ EvtAvatarSitDownNotify uint16 = 322
+ EvtAvatarStandUpNotify uint16 = 382
+ EvtAvatarUpdateFocusNotify uint16 = 317
+ EvtBeingHealedNotify uint16 = 366
+ EvtBeingHitNotify uint16 = 379
+ EvtBeingHitsCombineNotify uint16 = 364
+ EvtBulletDeactiveNotify uint16 = 399
EvtBulletHitNotify uint16 = 348
- EvtBulletMoveNotify uint16 = 365
- EvtCostStaminaNotify uint16 = 373
- EvtCreateGadgetNotify uint16 = 307
- EvtDestroyGadgetNotify uint16 = 321
+ EvtBulletMoveNotify uint16 = 389
+ EvtCostStaminaNotify uint16 = 378
+ EvtCreateGadgetNotify uint16 = 400
+ EvtDestroyGadgetNotify uint16 = 343
EvtDestroyServerGadgetNotify uint16 = 387
- EvtDoSkillSuccNotify uint16 = 335
- EvtEntityRenderersChangedNotify uint16 = 343
- EvtEntityStartDieEndNotify uint16 = 381
- EvtFaceToDirNotify uint16 = 390
- EvtFaceToEntityNotify uint16 = 303
- EvtLocalGadgetOwnerLeaveSceneNotify uint16 = 384
- EvtRushMoveNotify uint16 = 375
- EvtSetAttackTargetNotify uint16 = 399
- ExclusiveRuleNotify uint16 = 101
- ExecuteGadgetLuaReq uint16 = 269
- ExecuteGadgetLuaRsp uint16 = 210
- ExecuteGroupTriggerReq uint16 = 257
- ExecuteGroupTriggerRsp uint16 = 300
- ExitCustomDungeonTryReq uint16 = 6247
- ExitCustomDungeonTryRsp uint16 = 6237
- ExitFishingReq uint16 = 5814
- ExitFishingRsp uint16 = 5847
- ExitSceneWeatherAreaNotify uint16 = 242
- ExitTransPointRegionNotify uint16 = 282
- ExpeditionChallengeEnterRegionNotify uint16 = 2154
- ExpeditionChallengeFinishedNotify uint16 = 2091
- ExpeditionRecallReq uint16 = 2131
- ExpeditionRecallRsp uint16 = 2129
- ExpeditionStartReq uint16 = 2087
- ExpeditionStartRsp uint16 = 2135
- ExpeditionTakeRewardReq uint16 = 2149
- ExpeditionTakeRewardRsp uint16 = 2080
- FindHilichurlAcceptQuestNotify uint16 = 8659
- FindHilichurlFinishSecondQuestNotify uint16 = 8901
- FinishDeliveryNotify uint16 = 2089
- FinishLanternProjectionReq uint16 = 8704
- FinishLanternProjectionRsp uint16 = 8713
- FinishMainCoopReq uint16 = 1952
+ EvtDoSkillSuccNotify uint16 = 319
+ EvtEntityRenderersChangedNotify uint16 = 375
+ EvtEntityStartDieEndNotify uint16 = 325
+ EvtFaceToDirNotify uint16 = 347
+ EvtFaceToEntityNotify uint16 = 361
+ EvtLocalGadgetOwnerLeaveSceneNotify uint16 = 352
+ EvtRushMoveNotify uint16 = 339
+ EvtSetAttackTargetNotify uint16 = 357
+ ExclusiveRuleNotify uint16 = 118
+ ExecuteGadgetLuaReq uint16 = 235
+ ExecuteGadgetLuaRsp uint16 = 240
+ ExecuteGroupTriggerReq uint16 = 263
+ ExecuteGroupTriggerRsp uint16 = 204
+ ExitCustomDungeonTryReq uint16 = 6243
+ ExitCustomDungeonTryRsp uint16 = 6209
+ ExitFishingReq uint16 = 5802
+ ExitFishingRsp uint16 = 5843
+ ExitSceneWeatherAreaNotify uint16 = 211
+ ExitTransPointRegionNotify uint16 = 290
+ ExpeditionChallengeEnterRegionNotify uint16 = 2027
+ ExpeditionChallengeFinishedNotify uint16 = 2074
+ ExpeditionRecallReq uint16 = 2098
+ ExpeditionRecallRsp uint16 = 2066
+ ExpeditionStartReq uint16 = 2016
+ ExpeditionStartRsp uint16 = 2182
+ ExpeditionTakeRewardReq uint16 = 2015
+ ExpeditionTakeRewardRsp uint16 = 2197
+ FindHilichurlAcceptQuestNotify uint16 = 8893
+ FindHilichurlFinishSecondQuestNotify uint16 = 8644
+ FinishDeliveryNotify uint16 = 2030
+ FinishedParentQuestNotify uint16 = 419
+ FinishedParentQuestUpdateNotify uint16 = 500
+ FinishedTalkIdListNotify uint16 = 578
+ FinishLanternProjectionReq uint16 = 8932
+ FinishLanternProjectionRsp uint16 = 8971
+ FinishMainCoopReq uint16 = 1977
FinishMainCoopRsp uint16 = 1981
- FinishedParentQuestNotify uint16 = 435
- FinishedParentQuestUpdateNotify uint16 = 407
- FinishedTalkIdListNotify uint16 = 573
- FireworksLaunchDataNotify uint16 = 5928
- FireworksReformDataNotify uint16 = 6033
- FishAttractNotify uint16 = 5837
- FishBaitGoneNotify uint16 = 5823
- FishBattleBeginReq uint16 = 5820
- FishBattleBeginRsp uint16 = 5845
- FishBattleEndReq uint16 = 5841
- FishBattleEndRsp uint16 = 5842
- FishBiteReq uint16 = 5844
- FishBiteRsp uint16 = 5849
- FishCastRodReq uint16 = 5802
+ FireworksLaunchDataNotify uint16 = 5917
+ FireworksReformDataNotify uint16 = 5908
+ FishAttractNotify uint16 = 5809
+ FishBaitGoneNotify uint16 = 5830
+ FishBattleBeginReq uint16 = 5815
+ FishBattleBeginRsp uint16 = 5818
+ FishBattleEndReq uint16 = 5808
+ FishBattleEndRsp uint16 = 5845
+ FishBiteReq uint16 = 5812
+ FishBiteRsp uint16 = 5834
+ FishCastRodReq uint16 = 5827
FishCastRodRsp uint16 = 5831
- FishChosenNotify uint16 = 5829
- FishEscapeNotify uint16 = 5822
- FishPoolDataNotify uint16 = 5848
- FishingGallerySettleNotify uint16 = 8780
- FleurFairBalloonSettleNotify uint16 = 2099
- FleurFairBuffEnergyNotify uint16 = 5324
- FleurFairFallSettleNotify uint16 = 2017
- FleurFairFinishGalleryStageNotify uint16 = 5342
- FleurFairMusicGameSettleReq uint16 = 2194
- FleurFairMusicGameSettleRsp uint16 = 2113
- FleurFairMusicGameStartReq uint16 = 2167
- FleurFairMusicGameStartRsp uint16 = 2079
- FleurFairReplayMiniGameReq uint16 = 2181
- FleurFairReplayMiniGameRsp uint16 = 2052
- FleurFairStageSettleNotify uint16 = 5356
- FlightActivityRestartReq uint16 = 2037
- FlightActivityRestartRsp uint16 = 2165
- FlightActivitySettleNotify uint16 = 2195
- FocusAvatarReq uint16 = 1654
- FocusAvatarRsp uint16 = 1681
- ForceAddPlayerFriendReq uint16 = 4057
- ForceAddPlayerFriendRsp uint16 = 4100
- ForceDragAvatarNotify uint16 = 3235
- ForceDragBackTransferNotify uint16 = 3145
- ForgeDataNotify uint16 = 680
- ForgeFormulaDataNotify uint16 = 689
- ForgeGetQueueDataReq uint16 = 646
- ForgeGetQueueDataRsp uint16 = 641
- ForgeQueueDataNotify uint16 = 676
- ForgeQueueManipulateReq uint16 = 624
- ForgeQueueManipulateRsp uint16 = 656
- ForgeStartReq uint16 = 649
- ForgeStartRsp uint16 = 691
- FoundationNotify uint16 = 847
- FoundationReq uint16 = 805
- FoundationRsp uint16 = 882
- FriendInfoChangeNotify uint16 = 4032
- FungusCaptureSettleNotify uint16 = 5506
- FungusCultivateReq uint16 = 21749
- FungusCultivateRsp uint16 = 23532
- FungusFighterClearTrainingRuntimeDataReq uint16 = 24137
- FungusFighterClearTrainingRuntimeDataRsp uint16 = 22991
- FungusFighterPlotInfoNotify uint16 = 22174
- FungusFighterRestartTrainingDungeonReq uint16 = 23980
- FungusFighterRestartTrainingDungeonRsp uint16 = 22890
- FungusFighterRuntimeDataNotify uint16 = 24674
- FungusFighterTrainingGallerySettleNotify uint16 = 23931
- FungusFighterTrainingInfoNotify uint16 = 5595
- FungusFighterTrainingSelectFungusReq uint16 = 23903
- FungusFighterTrainingSelectFungusRsp uint16 = 21570
- FungusFighterUseBackupFungusReq uint16 = 21266
- FungusFighterUseBackupFungusRsp uint16 = 23428
- FungusRenameReq uint16 = 22006
- FungusRenameRsp uint16 = 20066
- FunitureMakeInfoChangeNotify uint16 = 4898
- FurnitureCurModuleArrangeCountNotify uint16 = 4498
- FurnitureMakeBeHelpedNotify uint16 = 4578
- FurnitureMakeCancelReq uint16 = 4555
- FurnitureMakeCancelRsp uint16 = 4683
- FurnitureMakeFinishNotify uint16 = 4841
- FurnitureMakeHelpReq uint16 = 4865
- FurnitureMakeHelpRsp uint16 = 4756
- FurnitureMakeReq uint16 = 4477
- FurnitureMakeRsp uint16 = 4782
- FurnitureMakeStartReq uint16 = 4633
- FurnitureMakeStartRsp uint16 = 4729
- GCGApplyInviteBattleNotify uint16 = 7820
- GCGApplyInviteBattleReq uint16 = 7730
- GCGApplyInviteBattleRsp uint16 = 7304
- GCGAskDuelReq uint16 = 7237
- GCGAskDuelRsp uint16 = 7869
- GCGBasicDataNotify uint16 = 7319
- GCGBossChallengeUpdateNotify uint16 = 7073
- GCGChallengeUpdateNotify uint16 = 7268
- GCGClientSettleReq uint16 = 7506
- GCGClientSettleRsp uint16 = 7105
- GCGDSCardBackUnlockNotify uint16 = 7265
- GCGDSCardFaceUnlockNotify uint16 = 7049
- GCGDSCardNumChangeNotify uint16 = 7358
- GCGDSCardProficiencyNotify uint16 = 7680
- GCGDSChangeCardBackReq uint16 = 7292
- GCGDSChangeCardBackRsp uint16 = 7044
- GCGDSChangeCardFaceReq uint16 = 7169
- GCGDSChangeCardFaceRsp uint16 = 7331
- GCGDSChangeCurDeckReq uint16 = 7131
- GCGDSChangeCurDeckRsp uint16 = 7301
- GCGDSChangeDeckNameReq uint16 = 7432
- GCGDSChangeDeckNameRsp uint16 = 7916
- GCGDSChangeFieldReq uint16 = 7541
- GCGDSChangeFieldRsp uint16 = 7444
- GCGDSCurDeckChangeNotify uint16 = 7796
- GCGDSDataNotify uint16 = 7122
- GCGDSDeckSaveReq uint16 = 7104
- GCGDSDeckSaveRsp uint16 = 7269
- GCGDSDeckUnlockNotify uint16 = 7732
- GCGDSDeleteDeckReq uint16 = 7988
- GCGDSDeleteDeckRsp uint16 = 7524
- GCGDSFieldUnlockNotify uint16 = 7333
- GCGGameBriefDataNotify uint16 = 7539
- GCGGrowthLevelNotify uint16 = 7736
- GCGGrowthLevelRewardNotify uint16 = 7477
- GCGGrowthLevelTakeRewardReq uint16 = 7051
- GCGGrowthLevelTakeRewardRsp uint16 = 7670
- GCGHeartBeatNotify uint16 = 7224
- GCGInitFinishReq uint16 = 7684
- GCGInitFinishRsp uint16 = 7433
- GCGInviteBattleNotify uint16 = 7692
- GCGInviteGuestBattleReq uint16 = 7783
- GCGInviteGuestBattleRsp uint16 = 7251
- GCGLevelChallengeFinishNotify uint16 = 7629
- GCGLevelChallengeNotify uint16 = 7055
- GCGMessagePackNotify uint16 = 7516
- GCGNewCardInfoNotify uint16 = 7203
- GCGOperationReq uint16 = 7107
- GCGOperationRsp uint16 = 7600
- GCGResourceStateNotify uint16 = 7876
- GCGSettleNotify uint16 = 7769
- GCGSettleOptionReq uint16 = 7124
- GCGSettleOptionRsp uint16 = 7735
- GCGSkillPreviewAskReq uint16 = 7509
- GCGSkillPreviewAskRsp uint16 = 7409
- GCGSkillPreviewNotify uint16 = 7503
- GCGStartChallengeReq uint16 = 7595
- GCGStartChallengeRsp uint16 = 7763
- GCGTCInviteReq uint16 = 7922
- GCGTCInviteRsp uint16 = 7328
- GCGTCTavernChallengeDataNotify uint16 = 7294
- GCGTCTavernChallengeUpdateNotify uint16 = 7184
- GCGTCTavernInfoNotify uint16 = 7011
- GCGTavernNpcInfoNotify uint16 = 7290
- GCGWeekChallengeInfoNotify uint16 = 7615
- GCGWorldChallengeUnlockNotify uint16 = 7204
- GMShowNavMeshReq uint16 = 2357
- GMShowNavMeshRsp uint16 = 2400
- GMShowObstacleReq uint16 = 2361
- GMShowObstacleRsp uint16 = 2329
- GachaActivityCreateRobotReq uint16 = 8614
- GachaActivityCreateRobotRsp uint16 = 8610
- GachaActivityNextStageReq uint16 = 8257
- GachaActivityNextStageRsp uint16 = 8918
- GachaActivityPercentNotify uint16 = 8450
- GachaActivityResetReq uint16 = 8163
- GachaActivityResetRsp uint16 = 8240
- GachaActivityTakeRewardReq uint16 = 8930
- GachaActivityTakeRewardRsp uint16 = 8768
- GachaActivityUpdateElemNotify uint16 = 8919
- GachaOpenWishNotify uint16 = 1503
- GachaSimpleInfoNotify uint16 = 1590
- GachaWishReq uint16 = 1507
- GachaWishRsp uint16 = 1521
- GadgetAutoPickDropInfoNotify uint16 = 897
- GadgetChainLevelChangeNotify uint16 = 822
- GadgetChainLevelUpdateNotify uint16 = 853
- GadgetChangeLevelTagReq uint16 = 843
- GadgetChangeLevelTagRsp uint16 = 874
- GadgetCustomTreeInfoNotify uint16 = 850
+ FishChosenNotify uint16 = 5844
+ FishEscapeNotify uint16 = 5817
+ FishingGallerySettleNotify uint16 = 8464
+ FishPoolDataNotify uint16 = 5837
+ FleurFairBalloonSettleNotify uint16 = 2159
+ FleurFairBuffEnergyNotify uint16 = 5322
+ FleurFairFallSettleNotify uint16 = 2136
+ FleurFairFinishGalleryStageNotify uint16 = 5311
+ FleurFairMusicGameSettleReq uint16 = 2111
+ FleurFairMusicGameSettleRsp uint16 = 2156
+ FleurFairMusicGameStartReq uint16 = 2070
+ FleurFairMusicGameStartRsp uint16 = 2146
+ FleurFairReplayMiniGameReq uint16 = 2127
+ FleurFairReplayMiniGameRsp uint16 = 2061
+ FleurFairStageSettleNotify uint16 = 5382
+ FlightActivityRestartReq uint16 = 2152
+ FlightActivityRestartRsp uint16 = 2158
+ FlightActivitySettleNotify uint16 = 2143
+ FocusAvatarReq uint16 = 1793
+ FocusAvatarRsp uint16 = 1786
+ ForceAddPlayerFriendReq uint16 = 4063
+ ForceAddPlayerFriendRsp uint16 = 4004
+ ForceDragAvatarNotify uint16 = 3008
+ ForceDragBackTransferNotify uint16 = 3494
+ ForgeDataNotify uint16 = 674
+ ForgeFormulaDataNotify uint16 = 626
+ ForgeGetQueueDataReq uint16 = 664
+ ForgeGetQueueDataRsp uint16 = 667
+ ForgeQueueDataNotify uint16 = 695
+ ForgeQueueManipulateReq uint16 = 622
+ ForgeQueueManipulateRsp uint16 = 682
+ ForgeStartReq uint16 = 615
+ ForgeStartRsp uint16 = 621
+ FoundationNotify uint16 = 876
+ FoundationReq uint16 = 842
+ FoundationRsp uint16 = 890
+ FriendInfoChangeNotify uint16 = 4065
+ FungusCaptureSettleNotify uint16 = 5510
+ FungusCultivateReq uint16 = 23545
+ FungusCultivateRsp uint16 = 20883
+ FungusFighterClearTrainingRuntimeDataReq uint16 = 24267
+ FungusFighterClearTrainingRuntimeDataRsp uint16 = 20749
+ FungusFighterPlotInfoNotify uint16 = 23920
+ FungusFighterRestartTrainingDungeonReq uint16 = 24273
+ FungusFighterRestartTrainingDungeonRsp uint16 = 20579
+ FungusFighterRuntimeDataNotify uint16 = 20567
+ FungusFighterTrainingGallerySettleNotify uint16 = 23475
+ FungusFighterTrainingInfoNotify uint16 = 5533
+ FungusFighterTrainingSelectFungusReq uint16 = 24249
+ FungusFighterTrainingSelectFungusRsp uint16 = 23309
+ FungusFighterUseBackupFungusReq uint16 = 22075
+ FungusFighterUseBackupFungusRsp uint16 = 21089
+ FungusRenameReq uint16 = 22498
+ FungusRenameRsp uint16 = 22216
+ FurnitureCurModuleArrangeCountNotify uint16 = 4538
+ FurnitureMakeBeHelpedNotify uint16 = 4766
+ FurnitureMakeCancelReq uint16 = 4726
+ FurnitureMakeCancelRsp uint16 = 4676
+ FurnitureMakeFinishNotify uint16 = 4850
+ FurnitureMakeHelpReq uint16 = 4478
+ FurnitureMakeHelpRsp uint16 = 4507
+ FurnitureMakeInfoChangeNotify uint16 = 4882
+ FurnitureMakeReq uint16 = 4802
+ FurnitureMakeRsp uint16 = 4504
+ FurnitureMakeStartReq uint16 = 4581
+ FurnitureMakeStartRsp uint16 = 4877
+ GachaActivityCreateRobotReq uint16 = 8316
+ GachaActivityCreateRobotRsp uint16 = 8494
+ GachaActivityNextStageReq uint16 = 8342
+ GachaActivityNextStageRsp uint16 = 8914
+ GachaActivityPercentNotify uint16 = 8706
+ GachaActivityResetReq uint16 = 8540
+ GachaActivityResetRsp uint16 = 8416
+ GachaActivityTakeRewardReq uint16 = 8853
+ GachaActivityTakeRewardRsp uint16 = 8354
+ GachaActivityUpdateElemNotify uint16 = 8241
+ GachaOpenWishNotify uint16 = 1561
+ GachaSimpleInfoNotify uint16 = 1547
+ GachaWishReq uint16 = 1600
+ GachaWishRsp uint16 = 1543
+ GadgetAutoPickDropInfoNotify uint16 = 899
+ GadgetChainLevelChangeNotify uint16 = 837
+ GadgetChainLevelUpdateNotify uint16 = 873
+ GadgetChangeLevelTagReq uint16 = 875
+ GadgetChangeLevelTagRsp uint16 = 834
+ GadgetCustomTreeInfoNotify uint16 = 846
GadgetGeneralRewardInfoNotify uint16 = 848
- GadgetInteractReq uint16 = 872
- GadgetInteractRsp uint16 = 898
- GadgetPlayDataNotify uint16 = 831
- GadgetPlayStartNotify uint16 = 873
- GadgetPlayStopNotify uint16 = 899
- GadgetPlayUidOpNotify uint16 = 875
- GadgetStateNotify uint16 = 812
- GadgetTalkChangeNotify uint16 = 839
- GalleryBalloonScoreNotify uint16 = 5512
- GalleryBalloonShootNotify uint16 = 5598
- GalleryBounceConjuringHitNotify uint16 = 5505
- GalleryBrokenFloorFallNotify uint16 = 5575
- GalleryBulletHitNotify uint16 = 5531
- GalleryCrystalLinkBuffInfoNotify uint16 = 5539
- GalleryCrystalLinkKillMonsterNotify uint16 = 5547
- GalleryFallCatchNotify uint16 = 5507
- GalleryFallScoreNotify uint16 = 5521
- GalleryFlowerCatchNotify uint16 = 5573
- GalleryIslandPartyDownHillInfoNotify uint16 = 5522
- GalleryPreStartNotify uint16 = 5599
- GalleryStartNotify uint16 = 5572
- GalleryStopNotify uint16 = 5535
- GallerySumoKillMonsterNotify uint16 = 5582
- GalleryWillStartCountdownNotify uint16 = 5594
- GearActivityFinishPlayGearReq uint16 = 21834
- GearActivityFinishPlayGearRsp uint16 = 21800
- GearActivityFinishPlayPictureReq uint16 = 21054
- GearActivityFinishPlayPictureRsp uint16 = 21851
- GearActivityStartPlayGearReq uint16 = 23467
- GearActivityStartPlayGearRsp uint16 = 21025
- GearActivityStartPlayPictureReq uint16 = 24550
- GearActivityStartPlayPictureRsp uint16 = 23388
- GetActivityInfoReq uint16 = 2095
- GetActivityInfoRsp uint16 = 2041
- GetActivityScheduleReq uint16 = 2136
- GetActivityScheduleRsp uint16 = 2107
- GetActivityShopSheetInfoReq uint16 = 703
- GetActivityShopSheetInfoRsp uint16 = 790
- GetAllActivatedBargainDataReq uint16 = 463
- GetAllActivatedBargainDataRsp uint16 = 495
- GetAllH5ActivityInfoReq uint16 = 5668
- GetAllH5ActivityInfoRsp uint16 = 5676
- GetAllMailNotify uint16 = 1497
- GetAllMailReq uint16 = 1431
- GetAllMailResultNotify uint16 = 1481
- GetAllMailRsp uint16 = 1475
- GetAllSceneGalleryInfoReq uint16 = 5503
- GetAllSceneGalleryInfoRsp uint16 = 5590
- GetAllUnlockNameCardReq uint16 = 4027
- GetAllUnlockNameCardRsp uint16 = 4094
- GetAreaExplorePointReq uint16 = 241
- GetAreaExplorePointRsp uint16 = 249
- GetAuthSalesmanInfoReq uint16 = 2070
- GetAuthSalesmanInfoRsp uint16 = 2004
- GetAuthkeyReq uint16 = 1490
- GetAuthkeyRsp uint16 = 1473
- GetBargainDataReq uint16 = 488
- GetBargainDataRsp uint16 = 426
- GetBattlePassProductReq uint16 = 2644
- GetBattlePassProductRsp uint16 = 2649
- GetBlossomBriefInfoListReq uint16 = 2772
- GetBlossomBriefInfoListRsp uint16 = 2798
- GetBonusActivityRewardReq uint16 = 2581
- GetBonusActivityRewardRsp uint16 = 2505
- GetChatEmojiCollectionReq uint16 = 4068
- GetChatEmojiCollectionRsp uint16 = 4033
- GetCityHuntingOfferReq uint16 = 4325
- GetCityHuntingOfferRsp uint16 = 4307
- GetCityReputationInfoReq uint16 = 2872
- GetCityReputationInfoRsp uint16 = 2898
- GetCityReputationMapInfoReq uint16 = 2875
+ GadgetInteractReq uint16 = 879
+ GadgetInteractRsp uint16 = 830
+ GadgetPlayDataNotify uint16 = 827
+ GadgetPlayStartNotify uint16 = 878
+ GadgetPlayStopNotify uint16 = 857
+ GadgetPlayUidOpNotify uint16 = 839
+ GadgetStateNotify uint16 = 856
+ GadgetTalkChangeNotify uint16 = 816
+ GalleryBalloonScoreNotify uint16 = 5556
+ GalleryBalloonShootNotify uint16 = 5530
+ GalleryBounceConjuringHitNotify uint16 = 5542
+ GalleryBrokenFloorFallNotify uint16 = 5539
+ GalleryBulletHitNotify uint16 = 5527
+ GalleryCrystalLinkBuffInfoNotify uint16 = 5516
+ GalleryCrystalLinkKillMonsterNotify uint16 = 5576
+ GalleryFallCatchNotify uint16 = 5600
+ GalleryFallScoreNotify uint16 = 5543
+ GalleryFlowerCatchNotify uint16 = 5578
+ GalleryIslandPartyDownHillInfoNotify uint16 = 5537
+ GalleryPreStartNotify uint16 = 5557
+ GalleryStartNotify uint16 = 5579
+ GalleryStopNotify uint16 = 5519
+ GallerySumoKillMonsterNotify uint16 = 5590
+ GalleryWillStartCountdownNotify uint16 = 5505
+ GCGApplyInviteBattleNotify uint16 = 7984
+ GCGApplyInviteBattleReq uint16 = 7032
+ GCGApplyInviteBattleRsp uint16 = 7754
+ GCGAskDuelReq uint16 = 7034
+ GCGAskDuelRsp uint16 = 7564
+ GCGBackToDuelReq uint16 = 7015
+ GCGBackToDuelRsp uint16 = 7039
+ GCGBasicDataNotify uint16 = 7739
+ GCGBossChallengeUpdateNotify uint16 = 7852
+ GCGChallengeUpdateNotify uint16 = 7270
+ GCGClientSettleReq uint16 = 7035
+ GCGClientSettleRsp uint16 = 7532
+ GCGDebugReplayNotify uint16 = 7071
+ GCGDSBanCardNotify uint16 = 7135
+ GCGDSCardBackUnlockNotify uint16 = 7078
+ GCGDSCardFaceUnlockNotify uint16 = 7767
+ GCGDSCardFaceUpdateNotify uint16 = 7066
+ GCGDSCardNumChangeNotify uint16 = 7244
+ GCGDSCardProficiencyNotify uint16 = 7969
+ GCGDSChangeCardBackReq uint16 = 7680
+ GCGDSChangeCardBackRsp uint16 = 7011
+ GCGDSChangeCardFaceReq uint16 = 7010
+ GCGDSChangeCardFaceRsp uint16 = 7549
+ GCGDSChangeCurDeckReq uint16 = 7257
+ GCGDSChangeCurDeckRsp uint16 = 7908
+ GCGDSChangeDeckNameReq uint16 = 7463
+ GCGDSChangeDeckNameRsp uint16 = 7617
+ GCGDSChangeFieldReq uint16 = 7788
+ GCGDSChangeFieldRsp uint16 = 7036
+ GCGDSCurDeckChangeNotify uint16 = 7769
+ GCGDSDataNotify uint16 = 7850
+ GCGDSDeckSaveReq uint16 = 7713
+ GCGDSDeckSaveRsp uint16 = 7459
+ GCGDSDeckUnlockNotify uint16 = 7427
+ GCGDSDeckUpdateNotify uint16 = 7751
+ GCGDSDeleteDeckReq uint16 = 7821
+ GCGDSDeleteDeckRsp uint16 = 7067
+ GCGDSFieldUnlockNotify uint16 = 7860
+ GCGDSTakeCardProficiencyRewardReq uint16 = 7001
+ GCGDSTakeCardProficiencyRewardRsp uint16 = 7718
+ GCGGameBriefDataNotify uint16 = 7824
+ GCGGameCreateFailReasonNotify uint16 = 7658
+ GCGGameMaxNotify uint16 = 7226
+ GCGGrowthLevelNotify uint16 = 7343
+ GCGGrowthLevelRewardNotify uint16 = 7934
+ GCGGrowthLevelTakeRewardReq uint16 = 7486
+ GCGGrowthLevelTakeRewardRsp uint16 = 7602
+ GCGHeartBeatNotify uint16 = 7576
+ GCGInitFinishReq uint16 = 7348
+ GCGInitFinishRsp uint16 = 7369
+ GCGInviteBattleNotify uint16 = 7448
+ GCGInviteGuestBattleReq uint16 = 7202
+ GCGInviteGuestBattleRsp uint16 = 7997
+ GCGLevelChallengeDeleteNotify uint16 = 7993
+ GCGLevelChallengeFinishNotify uint16 = 7004
+ GCGLevelChallengeNotify uint16 = 7183
+ GCGMessagePackNotify uint16 = 7299
+ GCGOperationReq uint16 = 7664
+ GCGOperationRsp uint16 = 7285
+ GCGResourceStateNotify uint16 = 7586
+ GCGSettleNotify uint16 = 7562
+ GCGSettleOptionReq uint16 = 7600
+ GCGSettleOptionRsp uint16 = 7110
+ GCGSkillPreviewAskReq uint16 = 7858
+ GCGSkillPreviewAskRsp uint16 = 7877
+ GCGSkillPreviewNotify uint16 = 7659
+ GCGStartChallengeByCheckRewardReq uint16 = 7982
+ GCGStartChallengeByCheckRewardRsp uint16 = 7727
+ GCGStartChallengeReq uint16 = 7964
+ GCGStartChallengeRsp uint16 = 7999
+ GCGTavernNpcInfoNotify uint16 = 7267
+ GCGTCInviteReq uint16 = 7341
+ GCGTCInviteRsp uint16 = 7027
+ GCGTCTavernChallengeDataNotify uint16 = 7356
+ GCGTCTavernChallengeUpdateNotify uint16 = 7907
+ GCGTCTavernInfoNotify uint16 = 7268
+ GCGWeekChallengeInfoNotify uint16 = 7058
+ GCGWorldChallengeUnlockNotify uint16 = 7370
+ GCGWorldPlayerGCGStateReq uint16 = 7375
+ GCGWorldPlayerGCGStateRsp uint16 = 7248
+ GearActivityFinishPlayGearReq uint16 = 20236
+ GearActivityFinishPlayGearRsp uint16 = 20776
+ GearActivityFinishPlayPictureReq uint16 = 23793
+ GearActivityFinishPlayPictureRsp uint16 = 20453
+ GearActivityStartPlayGearReq uint16 = 20589
+ GearActivityStartPlayGearRsp uint16 = 23953
+ GearActivityStartPlayPictureReq uint16 = 24968
+ GearActivityStartPlayPictureRsp uint16 = 20011
+ GetActivityInfoReq uint16 = 2011
+ GetActivityInfoRsp uint16 = 2043
+ GetActivityScheduleReq uint16 = 2008
+ GetActivityScheduleRsp uint16 = 2056
+ GetActivityShopSheetInfoReq uint16 = 761
+ GetActivityShopSheetInfoRsp uint16 = 747
+ GetAllActivatedBargainDataReq uint16 = 403
+ GetAllActivatedBargainDataRsp uint16 = 433
+ GetAllH5ActivityInfoReq uint16 = 5691
+ GetAllH5ActivityInfoRsp uint16 = 5692
+ GetAllMailNotify uint16 = 1499
+ GetAllMailReq uint16 = 1427
+ GetAllMailResultNotify uint16 = 1425
+ GetAllMailRsp uint16 = 1439
+ GetAllSceneGalleryInfoReq uint16 = 5561
+ GetAllSceneGalleryInfoRsp uint16 = 5547
+ GetAllUnlockNameCardReq uint16 = 4017
+ GetAllUnlockNameCardRsp uint16 = 4005
+ GetAreaExplorePointReq uint16 = 267
+ GetAreaExplorePointRsp uint16 = 215
+ GetAuthkeyReq uint16 = 1447
+ GetAuthkeyRsp uint16 = 1478
+ GetAuthSalesmanInfoReq uint16 = 2049
+ GetAuthSalesmanInfoRsp uint16 = 2087
+ GetBargainDataReq uint16 = 494
+ GetBargainDataRsp uint16 = 472
+ GetBattlePassProductReq uint16 = 2612
+ GetBattlePassProductRsp uint16 = 2634
+ GetBlossomBriefInfoListReq uint16 = 2779
+ GetBlossomBriefInfoListRsp uint16 = 2730
+ GetBonusActivityRewardReq uint16 = 2525
+ GetBonusActivityRewardRsp uint16 = 2542
+ GetChatEmojiCollectionReq uint16 = 4088
+ GetChatEmojiCollectionRsp uint16 = 4066
+ GetCityHuntingOfferReq uint16 = 4322
+ GetCityHuntingOfferRsp uint16 = 4335
+ GetCityReputationInfoReq uint16 = 2879
+ GetCityReputationInfoRsp uint16 = 2830
+ GetCityReputationMapInfoReq uint16 = 2839
GetCityReputationMapInfoRsp uint16 = 2848
- GetCompoundDataReq uint16 = 141
- GetCompoundDataRsp uint16 = 149
- GetCustomDungeonReq uint16 = 6209
- GetCustomDungeonRsp uint16 = 6227
- GetDailyDungeonEntryInfoReq uint16 = 930
- GetDailyDungeonEntryInfoRsp uint16 = 967
- GetDungeonEntryExploreConditionReq uint16 = 3165
- GetDungeonEntryExploreConditionRsp uint16 = 3269
- GetExpeditionAssistInfoListReq uint16 = 2150
- GetExpeditionAssistInfoListRsp uint16 = 2035
- GetFriendShowAvatarInfoReq uint16 = 4070
- GetFriendShowAvatarInfoRsp uint16 = 4017
- GetFriendShowNameCardInfoReq uint16 = 4061
- GetFriendShowNameCardInfoRsp uint16 = 4029
- GetFurnitureCurModuleArrangeCountReq uint16 = 4711
- GetGachaInfoReq uint16 = 1572
- GetGachaInfoRsp uint16 = 1598
- GetGameplayRecommendationReq uint16 = 151
- GetGameplayRecommendationRsp uint16 = 123
- GetHomeExchangeWoodInfoReq uint16 = 4473
- GetHomeExchangeWoodInfoRsp uint16 = 4659
- GetHomeLevelUpRewardReq uint16 = 4557
- GetHomeLevelUpRewardRsp uint16 = 4603
- GetHuntingOfferRewardReq uint16 = 4302
+ GetCompoundDataReq uint16 = 167
+ GetCompoundDataRsp uint16 = 115
+ GetCustomDungeonReq uint16 = 6205
+ GetCustomDungeonRsp uint16 = 6211
+ GetDailyDungeonEntryInfoReq uint16 = 950
+ GetDailyDungeonEntryInfoRsp uint16 = 953
+ GetDungeonEntryExploreConditionReq uint16 = 3364
+ GetDungeonEntryExploreConditionRsp uint16 = 3425
+ GetExpeditionAssistInfoListReq uint16 = 2088
+ GetExpeditionAssistInfoListRsp uint16 = 2100
+ GetFriendShowAvatarInfoReq uint16 = 4049
+ GetFriendShowAvatarInfoRsp uint16 = 4091
+ GetFriendShowNameCardInfoReq uint16 = 4098
+ GetFriendShowNameCardInfoRsp uint16 = 4020
+ GetFurnitureCurModuleArrangeCountReq uint16 = 4730
+ GetGachaInfoReq uint16 = 1579
+ GetGachaInfoRsp uint16 = 1530
+ GetGameplayRecommendationReq uint16 = 155
+ GetGameplayRecommendationRsp uint16 = 113
+ GetHomeExchangeWoodInfoReq uint16 = 4777
+ GetHomeExchangeWoodInfoRsp uint16 = 4580
+ GetHomeLevelUpRewardReq uint16 = 4457
+ GetHomeLevelUpRewardRsp uint16 = 4857
+ GetHuntingOfferRewardReq uint16 = 4327
GetHuntingOfferRewardRsp uint16 = 4331
- GetInvestigationMonsterReq uint16 = 1901
- GetInvestigationMonsterRsp uint16 = 1910
- GetMailItemReq uint16 = 1435
- GetMailItemRsp uint16 = 1407
- GetMapAreaReq uint16 = 3108
- GetMapAreaRsp uint16 = 3328
- GetMapMarkTipsReq uint16 = 3463
- GetMapMarkTipsRsp uint16 = 3327
- GetMechanicusInfoReq uint16 = 3972
- GetMechanicusInfoRsp uint16 = 3998
- GetNextResourceInfoReq uint16 = 192
- GetNextResourceInfoRsp uint16 = 120
- GetOnlinePlayerInfoReq uint16 = 82
- GetOnlinePlayerInfoRsp uint16 = 47
- GetOnlinePlayerListReq uint16 = 90
- GetOnlinePlayerListRsp uint16 = 73
- GetOpActivityInfoReq uint16 = 5172
- GetOpActivityInfoRsp uint16 = 5198
- GetParentQuestVideoKeyReq uint16 = 470
- GetParentQuestVideoKeyRsp uint16 = 417
- GetPlayerAskFriendListReq uint16 = 4018
- GetPlayerAskFriendListRsp uint16 = 4066
- GetPlayerBlacklistReq uint16 = 4049
- GetPlayerBlacklistRsp uint16 = 4091
- GetPlayerFriendListReq uint16 = 4072
- GetPlayerFriendListRsp uint16 = 4098
- GetPlayerHomeCompInfoReq uint16 = 4597
- GetPlayerMpModeAvailabilityReq uint16 = 1844
- GetPlayerMpModeAvailabilityRsp uint16 = 1849
- GetPlayerSocialDetailReq uint16 = 4073
- GetPlayerSocialDetailRsp uint16 = 4099
- GetPlayerTokenReq uint16 = 172
- GetPlayerTokenRsp uint16 = 198
- GetPushTipsRewardReq uint16 = 2227
- GetPushTipsRewardRsp uint16 = 2294
- GetQuestLackingResourceReq uint16 = 467
- GetQuestLackingResourceRsp uint16 = 458
- GetQuestTalkHistoryReq uint16 = 490
- GetQuestTalkHistoryRsp uint16 = 473
- GetRecentMpPlayerListReq uint16 = 4034
- GetRecentMpPlayerListRsp uint16 = 4050
- GetRecommendCustomDungeonReq uint16 = 6235
- GetRecommendCustomDungeonRsp uint16 = 6248
- GetRegionSearchReq uint16 = 5602
- GetReunionMissionInfoReq uint16 = 5094
- GetReunionMissionInfoRsp uint16 = 5099
- GetReunionPrivilegeInfoReq uint16 = 5097
- GetReunionPrivilegeInfoRsp uint16 = 5087
- GetReunionSignInInfoReq uint16 = 5052
+ GetInvestigationMonsterReq uint16 = 1930
+ GetInvestigationMonsterRsp uint16 = 1901
+ GetMailItemReq uint16 = 1419
+ GetMailItemRsp uint16 = 1500
+ GetMapAreaReq uint16 = 3106
+ GetMapAreaRsp uint16 = 3275
+ GetMapMarkTipsReq uint16 = 3473
+ GetMapMarkTipsRsp uint16 = 3272
+ GetMechanicusInfoReq uint16 = 3979
+ GetMechanicusInfoRsp uint16 = 3930
+ GetNextResourceInfoReq uint16 = 197
+ GetNextResourceInfoRsp uint16 = 102
+ GetOnlinePlayerInfoReq uint16 = 90
+ GetOnlinePlayerInfoRsp uint16 = 76
+ GetOnlinePlayerListReq uint16 = 47
+ GetOnlinePlayerListRsp uint16 = 78
+ GetOpActivityInfoReq uint16 = 5179
+ GetOpActivityInfoRsp uint16 = 5130
+ GetParentQuestVideoKeyReq uint16 = 449
+ GetParentQuestVideoKeyRsp uint16 = 491
+ GetPlayerAskFriendListReq uint16 = 4008
+ GetPlayerAskFriendListRsp uint16 = 4009
+ GetPlayerBlacklistReq uint16 = 4015
+ GetPlayerBlacklistRsp uint16 = 4021
+ GetPlayerFriendListReq uint16 = 4079
+ GetPlayerFriendListRsp uint16 = 4030
+ GetPlayerHomeCompInfoReq uint16 = 4655
+ GetPlayerMpModeAvailabilityReq uint16 = 1812
+ GetPlayerMpModeAvailabilityRsp uint16 = 1834
+ GetPlayerSocialDetailReq uint16 = 4078
+ GetPlayerSocialDetailRsp uint16 = 4057
+ GetPlayerTokenReq uint16 = 179
+ GetPlayerTokenRsp uint16 = 130
+ GetPushTipsRewardReq uint16 = 2217
+ GetPushTipsRewardRsp uint16 = 2205
+ GetQuestLackingResourceReq uint16 = 453
+ GetQuestLackingResourceRsp uint16 = 424
+ GetQuestTalkHistoryReq uint16 = 447
+ GetQuestTalkHistoryRsp uint16 = 478
+ GetRecentMpPlayerListReq uint16 = 4080
+ GetRecentMpPlayerListRsp uint16 = 4046
+ GetRecommendCustomDungeonReq uint16 = 6221
+ GetRecommendCustomDungeonRsp uint16 = 6237
+ GetRegionSearchReq uint16 = 5627
+ GetReunionMissionInfoReq uint16 = 5062
+ GetReunionMissionInfoRsp uint16 = 5084
+ GetReunionPrivilegeInfoReq uint16 = 5093
+ GetReunionPrivilegeInfoRsp uint16 = 5059
+ GetReunionSignInInfoReq uint16 = 5077
GetReunionSignInInfoRsp uint16 = 5081
- GetRogueDairyRepairInfoReq uint16 = 8014
- GetRogueDairyRepairInfoRsp uint16 = 8447
- GetSceneAreaReq uint16 = 265
- GetSceneAreaRsp uint16 = 204
- GetSceneNpcPositionReq uint16 = 535
- GetSceneNpcPositionRsp uint16 = 507
- GetScenePerformanceReq uint16 = 3419
- GetScenePerformanceRsp uint16 = 3137
- GetScenePointReq uint16 = 297
- GetScenePointRsp uint16 = 281
- GetShopReq uint16 = 772
- GetShopRsp uint16 = 798
- GetShopmallDataReq uint16 = 707
- GetShopmallDataRsp uint16 = 721
- GetSignInRewardReq uint16 = 2507
- GetSignInRewardRsp uint16 = 2521
- GetStoreCustomDungeonReq uint16 = 6250
- GetStoreCustomDungeonRsp uint16 = 6212
- GetUgcBriefInfoReq uint16 = 6325
- GetUgcBriefInfoRsp uint16 = 6307
- GetUgcReq uint16 = 6326
- GetUgcRsp uint16 = 6318
- GetWidgetSlotReq uint16 = 4253
- GetWidgetSlotRsp uint16 = 4254
- GetWorldMpInfoReq uint16 = 3391
- GetWorldMpInfoRsp uint16 = 3320
- GiveUpRoguelikeDungeonCardReq uint16 = 8353
- GiveUpRoguelikeDungeonCardRsp uint16 = 8497
+ GetRogueDairyRepairInfoReq uint16 = 8730
+ GetRogueDairyRepairInfoRsp uint16 = 8656
+ GetSceneAreaReq uint16 = 289
+ GetSceneAreaRsp uint16 = 244
+ GetSceneNpcPositionReq uint16 = 519
+ GetSceneNpcPositionRsp uint16 = 600
+ GetScenePerformanceReq uint16 = 3403
+ GetScenePerformanceRsp uint16 = 3010
+ GetScenePointReq uint16 = 299
+ GetScenePointRsp uint16 = 225
+ GetShopmallDataReq uint16 = 800
+ GetShopmallDataRsp uint16 = 743
+ GetShopReq uint16 = 779
+ GetShopRsp uint16 = 730
+ GetSignInRewardReq uint16 = 2600
+ GetSignInRewardRsp uint16 = 2543
+ GetStoreCustomDungeonReq uint16 = 6204
+ GetStoreCustomDungeonRsp uint16 = 6210
+ GetUgcBriefInfoReq uint16 = 6322
+ GetUgcBriefInfoRsp uint16 = 6335
+ GetUgcReq uint16 = 6342
+ GetUgcRsp uint16 = 6341
+ GetWidgetSlotReq uint16 = 4274
+ GetWidgetSlotRsp uint16 = 4270
+ GetWorldMpInfoReq uint16 = 3034
+ GetWorldMpInfoRsp uint16 = 3310
+ GiveUpRoguelikeDungeonCardReq uint16 = 8440
+ GiveUpRoguelikeDungeonCardRsp uint16 = 8762
GivingRecordChangeNotify uint16 = 187
- GivingRecordNotify uint16 = 116
- GlobalBuildingInfoNotify uint16 = 5320
- GmTalkNotify uint16 = 94
- GmTalkReq uint16 = 98
- GmTalkRsp uint16 = 12
- GrantRewardNotify uint16 = 663
- GravenInnocenceEditCarveCombinationReq uint16 = 23107
- GravenInnocenceEditCarveCombinationRsp uint16 = 20702
- GravenInnocencePhotoFinishReq uint16 = 21750
- GravenInnocencePhotoFinishRsp uint16 = 23948
- GravenInnocencePhotoReminderNotify uint16 = 23864
- GravenInnocenceRaceRestartReq uint16 = 22882
- GravenInnocenceRaceRestartRsp uint16 = 21880
- GravenInnocenceRaceSettleNotify uint16 = 20681
- GroupLinkAllNotify uint16 = 5776
- GroupLinkChangeNotify uint16 = 5768
- GroupLinkDeleteNotify uint16 = 5775
- GroupLinkMarkUpdateNotify uint16 = 5757
- GroupSuiteNotify uint16 = 3257
- GroupUnloadNotify uint16 = 3344
- GuestBeginEnterSceneNotify uint16 = 3031
- GuestPostEnterSceneNotify uint16 = 3144
- H5ActivityIdsNotify uint16 = 5675
- HideAndSeekPlayerReadyNotify uint16 = 5302
- HideAndSeekPlayerSetAvatarNotify uint16 = 5319
- HideAndSeekSelectAvatarReq uint16 = 5330
- HideAndSeekSelectAvatarRsp uint16 = 5367
- HideAndSeekSelectSkillReq uint16 = 8183
- HideAndSeekSelectSkillRsp uint16 = 8088
- HideAndSeekSetReadyReq uint16 = 5358
- HideAndSeekSetReadyRsp uint16 = 5370
- HideAndSeekSettleNotify uint16 = 5317
- HitClientTrivialNotify uint16 = 244
- HitTreeNotify uint16 = 3019
- HomeAllUnlockedBgmIdListNotify uint16 = 4608
- HomeAvatarAllFinishRewardNotify uint16 = 4741
- HomeAvatarCostumeChangeNotify uint16 = 4748
- HomeAvatarRewardEventGetReq uint16 = 4551
- HomeAvatarRewardEventGetRsp uint16 = 4833
- HomeAvatarRewardEventNotify uint16 = 4852
- HomeAvatarSummonAllEventNotify uint16 = 4808
- HomeAvatarSummonEventReq uint16 = 4806
- HomeAvatarSummonEventRsp uint16 = 4817
- HomeAvatarSummonFinishReq uint16 = 4629
- HomeAvatarSummonFinishRsp uint16 = 4696
- HomeAvatarTalkFinishInfoNotify uint16 = 4896
- HomeAvatarTalkReq uint16 = 4688
- HomeAvatarTalkRsp uint16 = 4464
- HomeAvtarAllFinishRewardNotify uint16 = 4453
- HomeBalloonGalleryScoreNotify uint16 = 4654
- HomeBalloonGallerySettleNotify uint16 = 4811
- HomeBasicInfoNotify uint16 = 4885
- HomeBlockNotify uint16 = 4543
- HomeBlueprintInfoNotify uint16 = 4765
- HomeChangeBgmNotify uint16 = 4872
- HomeChangeBgmReq uint16 = 4558
- HomeChangeBgmRsp uint16 = 4488
- HomeChangeEditModeReq uint16 = 4564
- HomeChangeEditModeRsp uint16 = 4559
- HomeChangeModuleReq uint16 = 4809
- HomeChangeModuleRsp uint16 = 4596
- HomeChooseModuleReq uint16 = 4524
- HomeChooseModuleRsp uint16 = 4648
- HomeClearGroupRecordReq uint16 = 4759
- HomeClearGroupRecordRsp uint16 = 4605
- HomeComfortInfoNotify uint16 = 4699
- HomeCreateBlueprintReq uint16 = 4619
- HomeCreateBlueprintRsp uint16 = 4606
- HomeCustomFurnitureInfoNotify uint16 = 4712
- HomeDeleteBlueprintReq uint16 = 4502
- HomeDeleteBlueprintRsp uint16 = 4586
- HomeEditCustomFurnitureReq uint16 = 4724
- HomeEditCustomFurnitureRsp uint16 = 4496
- HomeEnterEditModeFinishReq uint16 = 4537
- HomeEnterEditModeFinishRsp uint16 = 4615
- HomeExchangeWoodReq uint16 = 4576
- HomeExchangeWoodRsp uint16 = 4622
- HomeFishFarmingInfoNotify uint16 = 4677
- HomeGalleryInPlayingNotify uint16 = 5553
- HomeGetArrangementInfoReq uint16 = 4848
- HomeGetArrangementInfoRsp uint16 = 4844
- HomeGetBasicInfoReq uint16 = 4655
- HomeGetBlueprintSlotInfoReq uint16 = 4584
- HomeGetBlueprintSlotInfoRsp uint16 = 4662
- HomeGetFishFarmingInfoReq uint16 = 4476
- HomeGetFishFarmingInfoRsp uint16 = 4678
- HomeGetGroupRecordReq uint16 = 4523
- HomeGetGroupRecordRsp uint16 = 4538
- HomeGetOnlineStatusReq uint16 = 4820
- HomeGetOnlineStatusRsp uint16 = 4705
- HomeKickPlayerReq uint16 = 4870
- HomeKickPlayerRsp uint16 = 4691
- HomeLimitedShopBuyGoodsReq uint16 = 4760
- HomeLimitedShopBuyGoodsRsp uint16 = 4750
- HomeLimitedShopGoodsListReq uint16 = 4552
- HomeLimitedShopGoodsListRsp uint16 = 4546
+ GivingRecordNotify uint16 = 123
+ GlobalBuildingInfoNotify uint16 = 5302
+ GMShowNavMeshReq uint16 = 2363
+ GMShowNavMeshRsp uint16 = 2304
+ GMShowObstacleReq uint16 = 2398
+ GMShowObstacleRsp uint16 = 2320
+ GmTalkNotify uint16 = 5
+ GmTalkReq uint16 = 30
+ GmTalkRsp uint16 = 56
+ GrantRewardNotify uint16 = 603
+ GravenInnocenceEditCarveCombinationReq uint16 = 24150
+ GravenInnocenceEditCarveCombinationRsp uint16 = 23400
+ GravenInnocencePhotoFinishReq uint16 = 22391
+ GravenInnocencePhotoFinishRsp uint16 = 22418
+ GravenInnocencePhotoReminderNotify uint16 = 22577
+ GravenInnocenceRaceRestartReq uint16 = 23067
+ GravenInnocenceRaceRestartRsp uint16 = 20056
+ GravenInnocenceRaceSettleNotify uint16 = 24427
+ GroupLinkAllNotify uint16 = 5792
+ GroupLinkChangeNotify uint16 = 5791
+ GroupLinkDeleteNotify uint16 = 5772
+ GroupLinkMarkUpdateNotify uint16 = 5785
+ GroupSuiteNotify uint16 = 3489
+ GroupUnloadNotify uint16 = 3138
+ GuestBeginEnterSceneNotify uint16 = 3125
+ GuestPostEnterSceneNotify uint16 = 3229
+ H5ActivityIdsNotify uint16 = 5672
+ HideAndSeekChooseMapReq uint16 = 8759
+ HideAndSeekChooseMapRsp uint16 = 8501
+ HideAndSeekPlayerCapturedNotify uint16 = 5580
+ HideAndSeekPlayerReadyNotify uint16 = 5393
+ HideAndSeekPlayerSetAvatarNotify uint16 = 5354
+ HideAndSeekSelectAvatarReq uint16 = 5350
+ HideAndSeekSelectAvatarRsp uint16 = 5353
+ HideAndSeekSelectSkillReq uint16 = 8062
+ HideAndSeekSelectSkillRsp uint16 = 8841
+ HideAndSeekSetReadyReq uint16 = 5324
+ HideAndSeekSetReadyRsp uint16 = 5349
+ HideAndSeekSettleNotify uint16 = 5391
+ HitClientTrivialNotify uint16 = 238
+ HitTreeNotify uint16 = 3018
+ HomeAllUnlockedBgmIdListNotify uint16 = 4841
+ HomeAvatarAllFinishRewardNotify uint16 = 4798
+ HomeAvatarCostumeChangeNotify uint16 = 4775
+ HomeAvatarRewardEventGetReq uint16 = 4754
+ HomeAvatarRewardEventGetRsp uint16 = 4713
+ HomeAvatarRewardEventNotify uint16 = 4849
+ HomeAvatarSummonAllEventNotify uint16 = 4670
+ HomeAvatarSummonEventReq uint16 = 4894
+ HomeAvatarSummonEventRsp uint16 = 4562
+ HomeAvatarSummonFinishReq uint16 = 4804
+ HomeAvatarSummonFinishRsp uint16 = 4814
+ HomeAvatarTalkFinishInfoNotify uint16 = 4757
+ HomeAvatarTalkReq uint16 = 4704
+ HomeAvatarTalkRsp uint16 = 4718
+ HomeAvtarAllFinishRewardNotify uint16 = 4535
+ HomeBalloonGalleryScoreNotify uint16 = 4734
+ HomeBalloonGallerySettleNotify uint16 = 4604
+ HomeBasicInfoNotify uint16 = 4622
+ HomeBlockNotify uint16 = 4679
+ HomeBlueprintInfoNotify uint16 = 4813
+ HomeChangeBgmNotify uint16 = 4518
+ HomeChangeBgmReq uint16 = 4736
+ HomeChangeBgmRsp uint16 = 4895
+ HomeChangeEditModeReq uint16 = 4719
+ HomeChangeEditModeRsp uint16 = 4661
+ HomeChangeModuleReq uint16 = 4559
+ HomeChangeModuleRsp uint16 = 4551
+ HomeChooseModuleReq uint16 = 4456
+ HomeChooseModuleRsp uint16 = 4638
+ HomeClearGroupRecordReq uint16 = 4823
+ HomeClearGroupRecordRsp uint16 = 4525
+ HomeComfortInfoNotify uint16 = 4763
+ HomeCreateBlueprintReq uint16 = 4539
+ HomeCreateBlueprintRsp uint16 = 4806
+ HomeCustomFurnitureInfoNotify uint16 = 4888
+ HomeDeleteBlueprintReq uint16 = 4501
+ HomeDeleteBlueprintRsp uint16 = 4545
+ HomeEditCustomFurnitureReq uint16 = 4778
+ HomeEditCustomFurnitureRsp uint16 = 4769
+ HomeEnterEditModeFinishReq uint16 = 4865
+ HomeEnterEditModeFinishRsp uint16 = 4583
+ HomeExchangeWoodReq uint16 = 4808
+ HomeExchangeWoodRsp uint16 = 4885
+ HomeFishFarmingInfoNotify uint16 = 4842
+ HomeGalleryInPlayingNotify uint16 = 5573
+ HomeGetArrangementInfoReq uint16 = 4601
+ HomeGetArrangementInfoRsp uint16 = 4878
+ HomeGetBasicInfoReq uint16 = 4743
+ HomeGetBlueprintSlotInfoReq uint16 = 4688
+ HomeGetBlueprintSlotInfoRsp uint16 = 4498
+ HomeGetFishFarmingInfoReq uint16 = 4835
+ HomeGetFishFarmingInfoRsp uint16 = 4567
+ HomeGetGroupRecordReq uint16 = 4756
+ HomeGetGroupRecordRsp uint16 = 4824
+ HomeGetOnlineStatusReq uint16 = 4856
+ HomeGetOnlineStatusRsp uint16 = 4649
+ HomeKickPlayerReq uint16 = 4684
+ HomeKickPlayerRsp uint16 = 4657
+ HomeLimitedShopBuyGoodsReq uint16 = 4574
+ HomeLimitedShopBuyGoodsRsp uint16 = 4630
+ HomeLimitedShopGoodsListReq uint16 = 4537
+ HomeLimitedShopGoodsListRsp uint16 = 4492
HomeLimitedShopInfoChangeNotify uint16 = 4790
- HomeLimitedShopInfoNotify uint16 = 4887
- HomeLimitedShopInfoReq uint16 = 4825
- HomeLimitedShopInfoRsp uint16 = 4796
- HomeMarkPointNotify uint16 = 4474
- HomeModuleSeenReq uint16 = 4499
- HomeModuleSeenRsp uint16 = 4821
- HomeModuleUnlockNotify uint16 = 4560
- HomeNewUnlockedBgmIdListNotify uint16 = 4847
- HomePictureFrameInfoNotify uint16 = 4878
- HomePlantFieldNotify uint16 = 4549
- HomePlantInfoNotify uint16 = 4587
- HomePlantInfoReq uint16 = 4647
- HomePlantInfoRsp uint16 = 4701
- HomePlantSeedReq uint16 = 4804
- HomePlantSeedRsp uint16 = 4556
- HomePlantWeedReq uint16 = 4640
- HomePlantWeedRsp uint16 = 4527
- HomePreChangeEditModeNotify uint16 = 4639
- HomePreviewBlueprintReq uint16 = 4478
- HomePreviewBlueprintRsp uint16 = 4738
- HomePriorCheckNotify uint16 = 4599
- HomeRacingGallerySettleNotify uint16 = 4805
- HomeResourceNotify uint16 = 4892
- HomeResourceTakeFetterExpReq uint16 = 4768
- HomeResourceTakeFetterExpRsp uint16 = 4645
- HomeResourceTakeHomeCoinReq uint16 = 4479
- HomeResourceTakeHomeCoinRsp uint16 = 4541
- HomeSaveArrangementNoChangeReq uint16 = 4704
- HomeSaveArrangementNoChangeRsp uint16 = 4668
- HomeSceneInitFinishReq uint16 = 4674
- HomeSceneInitFinishRsp uint16 = 4505
- HomeSceneJumpReq uint16 = 4528
- HomeSceneJumpRsp uint16 = 4698
- HomeScenePointFishFarmingInfoNotify uint16 = 4547
- HomeSearchBlueprintReq uint16 = 4889
- HomeSearchBlueprintRsp uint16 = 4593
- HomeSeekFurnitureGalleryScoreNotify uint16 = 4583
- HomeSetBlueprintFriendOptionReq uint16 = 4554
- HomeSetBlueprintFriendOptionRsp uint16 = 4604
- HomeSetBlueprintSlotOptionReq uint16 = 4798
- HomeSetBlueprintSlotOptionRsp uint16 = 4786
- HomeTransferReq uint16 = 4726
- HomeTransferRsp uint16 = 4616
- HomeUpdateArrangementInfoReq uint16 = 4510
- HomeUpdateArrangementInfoRsp uint16 = 4757
- HomeUpdateFishFarmingInfoReq uint16 = 4544
- HomeUpdateFishFarmingInfoRsp uint16 = 4857
- HomeUpdatePictureFrameInfoReq uint16 = 4486
- HomeUpdatePictureFrameInfoRsp uint16 = 4641
- HomeUpdateScenePointFishFarmingInfoReq uint16 = 4511
- HomeUpdateScenePointFishFarmingInfoRsp uint16 = 4540
- HostPlayerNotify uint16 = 312
- HuntingFailNotify uint16 = 4320
- HuntingGiveUpReq uint16 = 4341
- HuntingGiveUpRsp uint16 = 4342
- HuntingOngoingNotify uint16 = 4345
- HuntingRevealClueNotify uint16 = 4322
- HuntingRevealFinalNotify uint16 = 4344
- HuntingStartNotify uint16 = 4329
- HuntingSuccessNotify uint16 = 4349
- InBattleMechanicusBuildingPointsNotify uint16 = 5303
- InBattleMechanicusCardResultNotify uint16 = 5397
+ HomeLimitedShopInfoNotify uint16 = 4475
+ HomeLimitedShopInfoReq uint16 = 4815
+ HomeLimitedShopInfoRsp uint16 = 4739
+ HomeMarkPointNotify uint16 = 4868
+ HomeModuleSeenReq uint16 = 4861
+ HomeModuleSeenRsp uint16 = 4693
+ HomeModuleUnlockNotify uint16 = 4674
+ HomeNewUnlockedBgmIdListNotify uint16 = 4899
+ HomePictureFrameInfoNotify uint16 = 4495
+ HomePlantFieldNotify uint16 = 4848
+ HomePlantInfoNotify uint16 = 4873
+ HomePlantInfoReq uint16 = 4629
+ HomePlantInfoRsp uint16 = 4460
+ HomePlantSeedReq uint16 = 4768
+ HomePlantSeedRsp uint16 = 4694
+ HomePlantWeedReq uint16 = 4866
+ HomePlantWeedRsp uint16 = 4619
+ HomePreChangeEditModeNotify uint16 = 4720
+ HomePreviewBlueprintReq uint16 = 4745
+ HomePreviewBlueprintRsp uint16 = 4462
+ HomePriorCheckNotify uint16 = 4557
+ HomeRacingGallerySettleNotify uint16 = 4807
+ HomeResourceNotify uint16 = 4762
+ HomeResourceTakeFetterExpReq uint16 = 4521
+ HomeResourceTakeFetterExpRsp uint16 = 4607
+ HomeResourceTakeHomeCoinReq uint16 = 4800
+ HomeResourceTakeHomeCoinRsp uint16 = 4779
+ HomeSaveArrangementNoChangeReq uint16 = 4672
+ HomeSaveArrangementNoChangeRsp uint16 = 4603
+ HomeSceneInitFinishReq uint16 = 4451
+ HomeSceneInitFinishRsp uint16 = 4531
+ HomeSceneJumpReq uint16 = 4527
+ HomeSceneJumpRsp uint16 = 4647
+ HomeScenePointFishFarmingInfoNotify uint16 = 4834
+ HomeSearchBlueprintReq uint16 = 4705
+ HomeSearchBlueprintRsp uint16 = 4512
+ HomeSeekFurnitureGalleryScoreNotify uint16 = 4723
+ HomeSetBlueprintFriendOptionReq uint16 = 4472
+ HomeSetBlueprintFriendOptionRsp uint16 = 4615
+ HomeSetBlueprintSlotOptionReq uint16 = 4491
+ HomeSetBlueprintSlotOptionRsp uint16 = 4621
+ HomeTransferReq uint16 = 4613
+ HomeTransferRsp uint16 = 4711
+ HomeUpdateArrangementInfoReq uint16 = 4533
+ HomeUpdateArrangementInfoRsp uint16 = 4776
+ HomeUpdateFishFarmingInfoReq uint16 = 4767
+ HomeUpdateFishFarmingInfoRsp uint16 = 4582
+ HomeUpdatePictureFrameInfoReq uint16 = 4764
+ HomeUpdatePictureFrameInfoRsp uint16 = 4468
+ HomeUpdateScenePointFishFarmingInfoReq uint16 = 4652
+ HomeUpdateScenePointFishFarmingInfoRsp uint16 = 4606
+ HostPlayerNotify uint16 = 356
+ HuntingFailNotify uint16 = 4315
+ HuntingGiveUpReq uint16 = 4308
+ HuntingGiveUpRsp uint16 = 4345
+ HuntingOngoingNotify uint16 = 4318
+ HuntingRevealClueNotify uint16 = 4317
+ HuntingRevealFinalNotify uint16 = 4312
+ HuntingStartNotify uint16 = 4344
+ HuntingSuccessNotify uint16 = 4334
+ InBattleMechanicusBuildingPointsNotify uint16 = 5361
+ InBattleMechanicusCardResultNotify uint16 = 5399
InBattleMechanicusConfirmCardNotify uint16 = 5348
- InBattleMechanicusConfirmCardReq uint16 = 5331
- InBattleMechanicusConfirmCardRsp uint16 = 5375
- InBattleMechanicusEscapeMonsterNotify uint16 = 5307
- InBattleMechanicusLeftMonsterNotify uint16 = 5321
- InBattleMechanicusPickCardNotify uint16 = 5399
- InBattleMechanicusPickCardReq uint16 = 5390
- InBattleMechanicusPickCardRsp uint16 = 5373
- InBattleMechanicusSettleNotify uint16 = 5305
- InstableSprayEnterDungeonReq uint16 = 24312
- InstableSprayEnterDungeonRsp uint16 = 23381
- InstableSprayGalleryInfoNotify uint16 = 5588
- InstableSprayLevelFinishNotify uint16 = 21961
- InstableSprayRestartDungeonReq uint16 = 23678
- InstableSprayRestartDungeonRsp uint16 = 24923
- InstableSpraySwitchTeamReq uint16 = 24857
- InstableSpraySwitchTeamRsp uint16 = 24152
- InteractDailyDungeonInfoNotify uint16 = 919
- InterpretInferenceWordReq uint16 = 419
- InterpretInferenceWordRsp uint16 = 461
+ InBattleMechanicusConfirmCardReq uint16 = 5327
+ InBattleMechanicusConfirmCardRsp uint16 = 5339
+ InBattleMechanicusEscapeMonsterNotify uint16 = 5400
+ InBattleMechanicusLeftMonsterNotify uint16 = 5343
+ InBattleMechanicusPickCardNotify uint16 = 5357
+ InBattleMechanicusPickCardReq uint16 = 5347
+ InBattleMechanicusPickCardRsp uint16 = 5378
+ InBattleMechanicusSettleNotify uint16 = 5342
+ InstableSprayEnterDungeonReq uint16 = 21889
+ InstableSprayEnterDungeonRsp uint16 = 24458
+ InstableSprayGalleryInfoNotify uint16 = 5594
+ InstableSprayLevelFinishNotify uint16 = 21512
+ InstableSprayRestartDungeonReq uint16 = 22725
+ InstableSprayRestartDungeonRsp uint16 = 23617
+ InstableSpraySwitchTeamReq uint16 = 22524
+ InstableSpraySwitchTeamRsp uint16 = 21806
+ InteractDailyDungeonInfoNotify uint16 = 954
+ InterpretInferenceWordReq uint16 = 454
+ InterpretInferenceWordRsp uint16 = 498
InterruptGalleryReq uint16 = 5548
- InterruptGalleryRsp uint16 = 5597
- InvestigationMonsterUpdateNotify uint16 = 1906
- InvestigationQuestDailyNotify uint16 = 1921
- InvestigationReadQuestDailyNotify uint16 = 1902
- IrodoriChessEquipCardReq uint16 = 8561
- IrodoriChessEquipCardRsp uint16 = 8308
- IrodoriChessLeftMonsterNotify uint16 = 5338
- IrodoriChessPlayerInfoNotify uint16 = 5364
- IrodoriChessUnequipCardReq uint16 = 8057
- IrodoriChessUnequipCardRsp uint16 = 8817
- IrodoriEditFlowerCombinationReq uint16 = 8608
- IrodoriEditFlowerCombinationRsp uint16 = 8833
- IrodoriFillPoetryReq uint16 = 8129
- IrodoriFillPoetryRsp uint16 = 8880
- IrodoriMasterGalleryCgEndNotify uint16 = 8061
- IrodoriMasterGallerySettleNotify uint16 = 8340
- IrodoriMasterStartGalleryReq uint16 = 8165
- IrodoriMasterStartGalleryRsp uint16 = 8381
- IrodoriScanEntityReq uint16 = 8767
- IrodoriScanEntityRsp uint16 = 8026
- IslandPartyRaftInfoNotify uint16 = 5565
- IslandPartySailInfoNotify uint16 = 5504
- IslandPartySettleNotify uint16 = 24601
- ItemAddHintNotify uint16 = 607
- ItemCdGroupTimeNotify uint16 = 634
- ItemGivingReq uint16 = 140
- ItemGivingRsp uint16 = 118
- JoinHomeWorldFailNotify uint16 = 4530
- JoinPlayerFailNotify uint16 = 236
- JoinPlayerSceneReq uint16 = 292
- JoinPlayerSceneRsp uint16 = 220
- KeepAliveNotify uint16 = 72
- LanternRiteDoFireworksReformReq uint16 = 8226
- LanternRiteDoFireworksReformRsp uint16 = 8657
- LanternRiteEndFireworksReformReq uint16 = 8277
- LanternRiteEndFireworksReformRsp uint16 = 8933
- LanternRiteStartFireworksReformReq uint16 = 8518
- LanternRiteStartFireworksReformRsp uint16 = 8862
- LanternRiteTakeSkinRewardReq uint16 = 8826
- LanternRiteTakeSkinRewardRsp uint16 = 8777
- LastPacketPrintNotify uint16 = 88
- LaunchFireworksReq uint16 = 6090
- LaunchFireworksRsp uint16 = 6057
- LeaveSceneReq uint16 = 298
- LeaveSceneRsp uint16 = 212
- LeaveWorldNotify uint16 = 3017
- LevelTagDataNotify uint16 = 3314
- LevelupCityReq uint16 = 216
+ InterruptGalleryRsp uint16 = 5599
+ InvestigationMonsterUpdateNotify uint16 = 1910
+ InvestigationQuestDailyNotify uint16 = 1926
+ InvestigationReadQuestDailyNotify uint16 = 1908
+ IrodoriChessEquipCardReq uint16 = 8766
+ IrodoriChessEquipCardRsp uint16 = 8884
+ IrodoriChessLeftMonsterNotify uint16 = 5331
+ IrodoriChessPlayerInfoNotify uint16 = 5312
+ IrodoriChessUnequipCardReq uint16 = 8409
+ IrodoriChessUnequipCardRsp uint16 = 8537
+ IrodoriEditFlowerCombinationReq uint16 = 8835
+ IrodoriEditFlowerCombinationRsp uint16 = 8454
+ IrodoriFillPoetryReq uint16 = 8926
+ IrodoriFillPoetryRsp uint16 = 8076
+ IrodoriMasterGalleryCgEndNotify uint16 = 8050
+ IrodoriMasterGallerySettleNotify uint16 = 8792
+ IrodoriMasterStartGalleryReq uint16 = 8243
+ IrodoriMasterStartGalleryRsp uint16 = 8495
+ IrodoriScanEntityReq uint16 = 8931
+ IrodoriScanEntityRsp uint16 = 8840
+ IslandPartyRaftInfoNotify uint16 = 5589
+ IslandPartySailInfoNotify uint16 = 5544
+ IslandPartySettleNotify uint16 = 24127
+ ItemAddHintNotify uint16 = 700
+ ItemCdGroupTimeNotify uint16 = 680
+ ItemGivingReq uint16 = 185
+ ItemGivingRsp uint16 = 108
+ ItemRenameAvatarReq uint16 = 1688
+ ItemRenameAvatarRsp uint16 = 1700
+ JoinHomeWorldFailNotify uint16 = 4859
+ JoinPlayerFailNotify uint16 = 258
+ JoinPlayerSceneReq uint16 = 297
+ JoinPlayerSceneRsp uint16 = 202
+ KeepAliveNotify uint16 = 79
+ LanternRiteDoFireworksReformReq uint16 = 8517
+ LanternRiteDoFireworksReformRsp uint16 = 8171
+ LanternRiteEndFireworksReformReq uint16 = 8936
+ LanternRiteEndFireworksReformRsp uint16 = 8414
+ LanternRiteStartFireworksReformReq uint16 = 8200
+ LanternRiteStartFireworksReformRsp uint16 = 8652
+ LanternRiteTakeSkinRewardReq uint16 = 8398
+ LanternRiteTakeSkinRewardRsp uint16 = 8104
+ LastPacketPrintNotify uint16 = 94
+ LaunchFireworksReq uint16 = 5977
+ LaunchFireworksRsp uint16 = 5936
+ LeaveSceneReq uint16 = 230
+ LeaveSceneRsp uint16 = 256
+ LeaveWorldNotify uint16 = 3247
+ LevelTagDataNotify uint16 = 3468
+ LevelupCityReq uint16 = 223
LevelupCityRsp uint16 = 287
- LifeStateChangeNotify uint16 = 1298
- LikeCustomDungeonReq uint16 = 6210
- LikeCustomDungeonRsp uint16 = 6219
- LiveEndNotify uint16 = 806
- LiveStartNotify uint16 = 826
- LoadActivityTerrainNotify uint16 = 2029
- LuaEnvironmentEffectNotify uint16 = 3408
- LuaSetOptionNotify uint16 = 316
- LuminanceStoneChallengeSettleNotify uint16 = 8186
- LunaRiteAreaFinishNotify uint16 = 8213
- LunaRiteGroupBundleRegisterNotify uint16 = 8465
- LunaRiteHintPointRemoveNotify uint16 = 8787
- LunaRiteHintPointReq uint16 = 8195
- LunaRiteHintPointRsp uint16 = 8765
- LunaRiteSacrificeReq uint16 = 8805
- LunaRiteSacrificeRsp uint16 = 8080
- LunaRiteTakeSacrificeRewardReq uint16 = 8045
- LunaRiteTakeSacrificeRewardRsp uint16 = 8397
- MailChangeNotify uint16 = 1498
- MainCoopFailNotify uint16 = 1951
- MainCoopUpdateNotify uint16 = 1968
- MapAreaChangeNotify uint16 = 3378
- MarkEntityInMinMapNotify uint16 = 202
- MarkMapReq uint16 = 3466
- MarkMapRsp uint16 = 3079
- MarkNewNotify uint16 = 1275
- MarkTargetInvestigationMonsterNotify uint16 = 1915
- MassiveEntityElementOpBatchNotify uint16 = 357
- MassiveEntityStateChangedNotify uint16 = 370
- MaterialDeleteReturnNotify uint16 = 661
- MaterialDeleteUpdateNotify uint16 = 700
- McoinExchangeHcoinReq uint16 = 616
+ LifeStateChangeNotify uint16 = 1230
+ LikeCustomDungeonReq uint16 = 6203
+ LikeCustomDungeonRsp uint16 = 6233
+ LiveEndNotify uint16 = 810
+ LiveStartNotify uint16 = 872
+ LoadActivityTerrainNotify uint16 = 2089
+ LuaEnvironmentEffectNotify uint16 = 3083
+ LuaSetOptionNotify uint16 = 323
+ LuminanceStoneChallengeSettleNotify uint16 = 8784
+ LunaRiteAreaFinishNotify uint16 = 8382
+ LunaRiteGroupBundleRegisterNotify uint16 = 8455
+ LunaRiteHintPointRemoveNotify uint16 = 8763
+ LunaRiteHintPointReq uint16 = 8811
+ LunaRiteHintPointRsp uint16 = 8394
+ LunaRiteSacrificeReq uint16 = 8717
+ LunaRiteSacrificeRsp uint16 = 8215
+ LunaRiteTakeSacrificeRewardReq uint16 = 8213
+ LunaRiteTakeSacrificeRewardRsp uint16 = 8895
+ MailChangeNotify uint16 = 1430
+ MainCoopFailNotify uint16 = 1956
+ MainCoopUpdateNotify uint16 = 1991
+ MapAreaChangeNotify uint16 = 3485
+ MarkEntityInMinMapNotify uint16 = 293
+ MarkMapReq uint16 = 3282
+ MarkMapRsp uint16 = 3346
+ MarkNewNotify uint16 = 1239
+ MarkTargetInvestigationMonsterNotify uint16 = 1921
+ MassiveEntityElementOpBatchNotify uint16 = 363
+ MassiveEntityStateChangedNotify uint16 = 349
+ MaterialDeleteReturnNotify uint16 = 698
+ MaterialDeleteUpdateNotify uint16 = 604
+ McoinExchangeHcoinReq uint16 = 623
McoinExchangeHcoinRsp uint16 = 687
- MechanicusCandidateTeamCreateReq uint16 = 3981
- MechanicusCandidateTeamCreateRsp uint16 = 3905
- MechanicusCloseNotify uint16 = 3921
- MechanicusCoinNotify uint16 = 3935
- MechanicusLevelupGearReq uint16 = 3973
- MechanicusLevelupGearRsp uint16 = 3999
- MechanicusOpenNotify uint16 = 3907
- MechanicusSequenceOpenNotify uint16 = 3912
- MechanicusUnlockGearReq uint16 = 3903
- MechanicusUnlockGearRsp uint16 = 3990
- MeetNpcReq uint16 = 503
- MeetNpcRsp uint16 = 590
- MetNpcIdListNotify uint16 = 521
- MichiaeMatsuriDarkPressureLevelUpdateNotify uint16 = 8825
- MichiaeMatsuriGainCrystalExpUpdateNotify uint16 = 8523
- MichiaeMatsuriInteractStatueReq uint16 = 8718
- MichiaeMatsuriInteractStatueRsp uint16 = 8449
- MichiaeMatsuriRemoveChallengeMarkNotify uint16 = 8072
- MichiaeMatsuriRemoveChestMarkNotify uint16 = 8726
- MichiaeMatsuriStartBossChallengeReq uint16 = 8703
- MichiaeMatsuriStartBossChallengeRsp uint16 = 8426
- MichiaeMatsuriStartDarkChallengeReq uint16 = 8054
- MichiaeMatsuriStartDarkChallengeRsp uint16 = 8791
- MichiaeMatsuriUnlockCrystalSkillReq uint16 = 8345
- MichiaeMatsuriUnlockCrystalSkillRsp uint16 = 8588
- MiracleRingDataNotify uint16 = 5225
- MiracleRingDeliverItemReq uint16 = 5229
- MiracleRingDeliverItemRsp uint16 = 5222
- MiracleRingDestroyNotify uint16 = 5244
+ MechanicusCandidateTeamCreateReq uint16 = 3925
+ MechanicusCandidateTeamCreateRsp uint16 = 3942
+ MechanicusCloseNotify uint16 = 3943
+ MechanicusCoinNotify uint16 = 3919
+ MechanicusLevelupGearReq uint16 = 3978
+ MechanicusLevelupGearRsp uint16 = 3957
+ MechanicusOpenNotify uint16 = 4000
+ MechanicusSequenceOpenNotify uint16 = 3956
+ MechanicusUnlockGearReq uint16 = 3961
+ MechanicusUnlockGearRsp uint16 = 3947
+ MeetNpcReq uint16 = 561
+ MeetNpcRsp uint16 = 547
+ MetNpcIdListNotify uint16 = 543
+ MichiaeMatsuriDarkPressureLevelUpdateNotify uint16 = 8136
+ MichiaeMatsuriGainCrystalExpUpdateNotify uint16 = 8318
+ MichiaeMatsuriInteractStatueReq uint16 = 8008
+ MichiaeMatsuriInteractStatueRsp uint16 = 8150
+ MichiaeMatsuriRemoveChallengeMarkNotify uint16 = 8581
+ MichiaeMatsuriRemoveChestMarkNotify uint16 = 8203
+ MichiaeMatsuriStartBossChallengeReq uint16 = 8650
+ MichiaeMatsuriStartBossChallengeRsp uint16 = 8953
+ MichiaeMatsuriStartDarkChallengeReq uint16 = 8166
+ MichiaeMatsuriStartDarkChallengeRsp uint16 = 8379
+ MichiaeMatsuriUnlockCrystalSkillReq uint16 = 8632
+ MichiaeMatsuriUnlockCrystalSkillRsp uint16 = 8874
+ MiracleRingDataNotify uint16 = 5222
+ MiracleRingDeliverItemReq uint16 = 5244
+ MiracleRingDeliverItemRsp uint16 = 5217
+ MiracleRingDestroyNotify uint16 = 5212
MiracleRingDropResultNotify uint16 = 5231
- MiracleRingTakeRewardReq uint16 = 5207
- MiracleRingTakeRewardRsp uint16 = 5202
- MistTrialDungeonFailNotify uint16 = 8135
- MistTrialFloorLevelNotify uint16 = 968
- MistTrialGetChallengeMissionReq uint16 = 8893
- MistTrialGetChallengeMissionRsp uint16 = 8508
- MistTrialGetDungeonExhibitionDataReq uint16 = 8740
- MistTrialGetDungeonExhibitionDataRsp uint16 = 8066
- MistTrialSelectAvatarAndEnterDungeonReq uint16 = 8666
- MistTrialSelectAvatarAndEnterDungeonRsp uint16 = 8239
- MistTrialSettleNotify uint16 = 8373
- MonsterAIConfigHashNotify uint16 = 3039
- MonsterAlertChangeNotify uint16 = 363
- MonsterForceAlertNotify uint16 = 395
- MonsterPointArrayRouteUpdateNotify uint16 = 3410
- MonsterSummonTagNotify uint16 = 1372
- MpBlockNotify uint16 = 1801
- MpPlayGuestReplyInviteReq uint16 = 1848
- MpPlayGuestReplyInviteRsp uint16 = 1850
- MpPlayGuestReplyNotify uint16 = 1812
- MpPlayInviteResultNotify uint16 = 1815
- MpPlayOwnerCheckReq uint16 = 1814
- MpPlayOwnerCheckRsp uint16 = 1847
- MpPlayOwnerInviteNotify uint16 = 1835
- MpPlayOwnerStartInviteReq uint16 = 1837
- MpPlayOwnerStartInviteRsp uint16 = 1823
- MpPlayPrepareInterruptNotify uint16 = 1813
- MpPlayPrepareNotify uint16 = 1833
- MultistagePlayEndNotify uint16 = 5355
- MultistagePlayFinishStageReq uint16 = 5398
- MultistagePlayFinishStageRsp uint16 = 5381
- MultistagePlayInfoNotify uint16 = 5372
- MultistagePlaySettleNotify uint16 = 5313
- MultistagePlayStageEndNotify uint16 = 5379
- MuqadasPotionActivityEnterDungeonReq uint16 = 24602
- MuqadasPotionActivityEnterDungeonRsp uint16 = 21804
- MuqadasPotionCaptureWeaknessReq uint16 = 20011
- MuqadasPotionCaptureWeaknessRsp uint16 = 24081
- MuqadasPotionDungeonSettleNotify uint16 = 20005
- MuqadasPotionRestartDungeonReq uint16 = 22391
- MuqadasPotionRestartDungeonRsp uint16 = 21208
- MusicGameSettleReq uint16 = 8892
- MusicGameSettleRsp uint16 = 8673
- MusicGameStartReq uint16 = 8406
- MusicGameStartRsp uint16 = 8326
- NavMeshStatsNotify uint16 = 2316
- NicknameAuditConfigNotify uint16 = 152
- NightCrowGadgetObservationMatchReq uint16 = 876
- NightCrowGadgetObservationMatchRsp uint16 = 846
- NormalUidOpNotify uint16 = 5726
- NpcTalkReq uint16 = 572
- NpcTalkRsp uint16 = 598
- NpcTalkStateNotify uint16 = 430
- ObstacleModifyNotify uint16 = 2312
- OfferingInteractReq uint16 = 2918
- OfferingInteractRsp uint16 = 2908
- OneofGatherPointDetectorDataNotify uint16 = 4297
- OpActivityDataNotify uint16 = 5112
- OpActivityStateNotify uint16 = 2572
- OpActivityUpdateNotify uint16 = 5135
- OpenBlossomCircleCampGuideNotify uint16 = 2703
- OpenStateChangeNotify uint16 = 127
- OpenStateUpdateNotify uint16 = 193
+ MiracleRingTakeRewardReq uint16 = 5235
+ MiracleRingTakeRewardRsp uint16 = 5227
+ MistTrialDungeonFailNotify uint16 = 8320
+ MistTrialFloorLevelNotify uint16 = 988
+ MistTrialGetChallengeMissionReq uint16 = 8048
+ MistTrialGetChallengeMissionRsp uint16 = 8193
+ MistTrialGetDungeonExhibitionDataReq uint16 = 8983
+ MistTrialGetDungeonExhibitionDataRsp uint16 = 8903
+ MistTrialSelectAvatarAndEnterDungeonReq uint16 = 8226
+ MistTrialSelectAvatarAndEnterDungeonRsp uint16 = 8658
+ MistTrialSettleNotify uint16 = 8116
+ MonsterAIConfigHashNotify uint16 = 3050
+ MonsterAlertChangeNotify uint16 = 303
+ MonsterForceAlertNotify uint16 = 333
+ MonsterPointArrayRouteUpdateNotify uint16 = 3384
+ MonsterSummonTagNotify uint16 = 1379
+ MpBlockNotify uint16 = 1806
+ MpPlayGuestReplyInviteReq uint16 = 1837
+ MpPlayGuestReplyInviteRsp uint16 = 1804
+ MpPlayGuestReplyNotify uint16 = 1810
+ MpPlayInviteResultNotify uint16 = 1839
+ MpPlayOwnerCheckReq uint16 = 1802
+ MpPlayOwnerCheckRsp uint16 = 1843
+ MpPlayOwnerInviteNotify uint16 = 1821
+ MpPlayOwnerStartInviteReq uint16 = 1809
+ MpPlayOwnerStartInviteRsp uint16 = 1830
+ MpPlayPrepareInterruptNotify uint16 = 1850
+ MpPlayPrepareNotify uint16 = 1801
+ MultistagePlayEndNotify uint16 = 5345
+ MultistagePlayFinishStageReq uint16 = 5330
+ MultistagePlayFinishStageRsp uint16 = 5325
+ MultistagePlayInfoNotify uint16 = 5379
+ MultistagePlaySettleNotify uint16 = 5360
+ MultistagePlayStageEndNotify uint16 = 5392
+ MuqadasPotionActivityEnterDungeonReq uint16 = 22772
+ MuqadasPotionActivityEnterDungeonRsp uint16 = 22650
+ MuqadasPotionCaptureWeaknessReq uint16 = 24162
+ MuqadasPotionCaptureWeaknessRsp uint16 = 21366
+ MuqadasPotionDungeonSettleNotify uint16 = 22734
+ MuqadasPotionRestartDungeonReq uint16 = 20087
+ MuqadasPotionRestartDungeonRsp uint16 = 20780
+ MusicGameSettleReq uint16 = 8998
+ MusicGameSettleRsp uint16 = 8360
+ MusicGameStartReq uint16 = 8820
+ MusicGameStartRsp uint16 = 8216
+ NavMeshStatsNotify uint16 = 2323
+ NicknameAuditConfigNotify uint16 = 171
+ NightCrowGadgetObservationMatchReq uint16 = 895
+ NightCrowGadgetObservationMatchRsp uint16 = 864
+ NormalUidOpNotify uint16 = 5742
+ NpcTalkReq uint16 = 579
+ NpcTalkRsp uint16 = 530
+ NpcTalkStateNotify uint16 = 450
+ ObstacleModifyNotify uint16 = 2356
+ OfferingInteractReq uint16 = 2920
+ OfferingInteractRsp uint16 = 2906
+ OneoffGatherPointDetectorDataNotify uint16 = 4293
+ OpActivityDataNotify uint16 = 5156
+ OpActivityStateNotify uint16 = 2579
+ OpActivityUpdateNotify uint16 = 5119
+ OpenBlossomCircleCampGuideNotify uint16 = 2761
+ OpenStateChangeNotify uint16 = 117
+ OpenStateUpdateNotify uint16 = 107
OrderDisplayNotify uint16 = 4131
- OrderFinishNotify uint16 = 4125
- OtherPlayerEnterHomeNotify uint16 = 4628
- OutStuckCustomDungeonReq uint16 = 6211
- OutStuckCustomDungeonRsp uint16 = 6234
- PSNBlackListNotify uint16 = 4040
- PSNFriendListNotify uint16 = 4087
- PSPlayerApplyEnterMpReq uint16 = 1841
- PSPlayerApplyEnterMpRsp uint16 = 1842
- ParentQuestInferenceDataNotify uint16 = 402
- PathfindingEnterSceneReq uint16 = 2307
- PathfindingEnterSceneRsp uint16 = 2321
- PathfindingPingNotify uint16 = 2335
- PersistentDungeonSwitchAvatarReq uint16 = 1684
- PersistentDungeonSwitchAvatarRsp uint16 = 1768
- PersonalLineAllDataReq uint16 = 474
- PersonalLineAllDataRsp uint16 = 476
- PersonalLineNewUnlockNotify uint16 = 442
- PersonalSceneJumpReq uint16 = 284
- PersonalSceneJumpRsp uint16 = 280
- PhotoActivityClientViewReq uint16 = 8709
- PhotoActivityClientViewRsp uint16 = 8983
- PhotoActivityFinishReq uint16 = 8921
- PhotoActivityFinishRsp uint16 = 8854
- PingReq uint16 = 7
- PingRsp uint16 = 21
- PlantFlowerAcceptAllGiveFlowerReq uint16 = 8808
- PlantFlowerAcceptAllGiveFlowerRsp uint16 = 8888
- PlantFlowerAcceptGiveFlowerReq uint16 = 8383
- PlantFlowerAcceptGiveFlowerRsp uint16 = 8567
- PlantFlowerEditFlowerCombinationReq uint16 = 8843
- PlantFlowerEditFlowerCombinationRsp uint16 = 8788
- PlantFlowerGetCanGiveFriendFlowerReq uint16 = 8716
- PlantFlowerGetCanGiveFriendFlowerRsp uint16 = 8766
- PlantFlowerGetFriendFlowerWishListReq uint16 = 8126
- PlantFlowerGetFriendFlowerWishListRsp uint16 = 8511
- PlantFlowerGetRecvFlowerListReq uint16 = 8270
- PlantFlowerGetRecvFlowerListRsp uint16 = 8374
- PlantFlowerGetSeedInfoReq uint16 = 8560
- PlantFlowerGetSeedInfoRsp uint16 = 8764
- PlantFlowerGiveFriendFlowerReq uint16 = 8846
- PlantFlowerGiveFriendFlowerRsp uint16 = 8386
- PlantFlowerHaveRecvFlowerNotify uint16 = 8078
- PlantFlowerSetFlowerWishReq uint16 = 8547
- PlantFlowerSetFlowerWishRsp uint16 = 8910
- PlantFlowerTakeSeedRewardReq uint16 = 8968
- PlantFlowerTakeSeedRewardRsp uint16 = 8860
- PlatformChangeRouteNotify uint16 = 268
- PlatformStartRouteNotify uint16 = 218
- PlatformStopRouteNotify uint16 = 266
- PlayerAllowEnterMpAfterAgreeMatchNotify uint16 = 4199
- PlayerApplyEnterHomeNotify uint16 = 4533
- PlayerApplyEnterHomeResultNotify uint16 = 4468
- PlayerApplyEnterHomeResultReq uint16 = 4693
- PlayerApplyEnterHomeResultRsp uint16 = 4706
- PlayerApplyEnterMpAfterMatchAgreedNotify uint16 = 4195
- PlayerApplyEnterMpNotify uint16 = 1826
- PlayerApplyEnterMpReq uint16 = 1818
- PlayerApplyEnterMpResultNotify uint16 = 1807
- PlayerApplyEnterMpResultReq uint16 = 1802
+ OrderFinishNotify uint16 = 4122
+ OtherPlayerEnterHomeNotify uint16 = 4749
+ OutStuckCustomDungeonReq uint16 = 6213
+ OutStuckCustomDungeonRsp uint16 = 6238
+ ParentQuestInferenceDataNotify uint16 = 493
+ PathfindingEnterSceneReq uint16 = 2400
+ PathfindingEnterSceneRsp uint16 = 2343
+ PathfindingPingNotify uint16 = 2319
+ PerformOperationNotify uint16 = 1176
+ PersistentDungeonSwitchAvatarReq uint16 = 1624
+ PersistentDungeonSwitchAvatarRsp uint16 = 1677
+ PersonalLineAllDataReq uint16 = 434
+ PersonalLineAllDataRsp uint16 = 495
+ PersonalLineNewUnlockNotify uint16 = 411
+ PersonalSceneJumpReq uint16 = 252
+ PersonalSceneJumpRsp uint16 = 274
+ PhotoActivityClientViewReq uint16 = 9000
+ PhotoActivityClientViewRsp uint16 = 8963
+ PhotoActivityFinishReq uint16 = 8395
+ PhotoActivityFinishRsp uint16 = 8847
+ PingReq uint16 = 100
+ PingRsp uint16 = 43
+ PlantFlowerAcceptAllGiveFlowerReq uint16 = 8240
+ PlantFlowerAcceptAllGiveFlowerRsp uint16 = 8313
+ PlantFlowerAcceptGiveFlowerReq uint16 = 8300
+ PlantFlowerAcceptGiveFlowerRsp uint16 = 8554
+ PlantFlowerEditFlowerCombinationReq uint16 = 8396
+ PlantFlowerEditFlowerCombinationRsp uint16 = 8684
+ PlantFlowerGetCanGiveFriendFlowerReq uint16 = 8545
+ PlantFlowerGetCanGiveFriendFlowerRsp uint16 = 8273
+ PlantFlowerGetFriendFlowerWishListReq uint16 = 8132
+ PlantFlowerGetFriendFlowerWishListRsp uint16 = 8682
+ PlantFlowerGetRecvFlowerListReq uint16 = 8662
+ PlantFlowerGetRecvFlowerListRsp uint16 = 8229
+ PlantFlowerGetSeedInfoReq uint16 = 8674
+ PlantFlowerGetSeedInfoRsp uint16 = 8912
+ PlantFlowerGiveFriendFlowerReq uint16 = 8930
+ PlantFlowerGiveFriendFlowerRsp uint16 = 8559
+ PlantFlowerHaveRecvFlowerNotify uint16 = 8101
+ PlantFlowerSetFlowerWishReq uint16 = 8420
+ PlantFlowerSetFlowerWishRsp uint16 = 8324
+ PlantFlowerTakeSeedRewardReq uint16 = 8611
+ PlantFlowerTakeSeedRewardRsp uint16 = 8685
+ PlatformChangeRouteNotify uint16 = 288
+ PlatformStartRouteNotify uint16 = 208
+ PlatformStopRouteNotify uint16 = 209
+ PlayerAllowEnterMpAfterAgreeMatchNotify uint16 = 4184
+ PlayerApplyEnterHomeNotify uint16 = 4486
+ PlayerApplyEnterHomeResultNotify uint16 = 4793
+ PlayerApplyEnterHomeResultReq uint16 = 4646
+ PlayerApplyEnterHomeResultRsp uint16 = 4542
+ PlayerApplyEnterMpAfterMatchAgreedNotify uint16 = 4168
+ PlayerApplyEnterMpNotify uint16 = 1842
+ PlayerApplyEnterMpReq uint16 = 1841
+ PlayerApplyEnterMpResultNotify uint16 = 1835
+ PlayerApplyEnterMpResultReq uint16 = 1827
PlayerApplyEnterMpResultRsp uint16 = 1831
- PlayerApplyEnterMpRsp uint16 = 1825
- PlayerCancelMatchReq uint16 = 4157
- PlayerCancelMatchRsp uint16 = 4152
- PlayerChatCDNotify uint16 = 3367
- PlayerChatNotify uint16 = 3010
- PlayerChatReq uint16 = 3185
- PlayerChatRsp uint16 = 3228
- PlayerCompoundMaterialBoostReq uint16 = 185
- PlayerCompoundMaterialBoostRsp uint16 = 125
- PlayerCompoundMaterialReq uint16 = 150
- PlayerCompoundMaterialRsp uint16 = 143
- PlayerConfirmMatchReq uint16 = 4172
- PlayerConfirmMatchRsp uint16 = 4194
- PlayerCookArgsReq uint16 = 166
- PlayerCookArgsRsp uint16 = 168
- PlayerCookReq uint16 = 194
- PlayerCookRsp uint16 = 188
- PlayerDataNotify uint16 = 190
- PlayerDeathZoneNotify uint16 = 6275
- PlayerEnterDungeonReq uint16 = 912
- PlayerEnterDungeonRsp uint16 = 935
- PlayerEnterSceneInfoNotify uint16 = 214
- PlayerEnterSceneNotify uint16 = 272
- PlayerEyePointStateNotify uint16 = 3051
- PlayerFishingDataNotify uint16 = 5835
- PlayerForceExitReq uint16 = 189
- PlayerForceExitRsp uint16 = 159
- PlayerGCGMatchConfirmNotify uint16 = 4185
- PlayerGCGMatchDismissNotify uint16 = 4173
- PlayerGameTimeNotify uint16 = 131
- PlayerGeneralMatchConfirmNotify uint16 = 4192
- PlayerGeneralMatchDismissNotify uint16 = 4191
- PlayerGetForceQuitBanInfoReq uint16 = 4164
- PlayerGetForceQuitBanInfoRsp uint16 = 4197
- PlayerHomeCompInfoNotify uint16 = 4880
- PlayerInjectFixNotify uint16 = 132
- PlayerInvestigationAllInfoNotify uint16 = 1928
- PlayerInvestigationNotify uint16 = 1911
- PlayerInvestigationTargetNotify uint16 = 1929
- PlayerLevelRewardUpdateNotify uint16 = 200
- PlayerLoginReq uint16 = 112
- PlayerLoginRsp uint16 = 135
- PlayerLogoutNotify uint16 = 103
- PlayerLogoutReq uint16 = 107
- PlayerLogoutRsp uint16 = 121
- PlayerLuaShellNotify uint16 = 133
- PlayerMatchAgreedResultNotify uint16 = 4170
- PlayerMatchInfoNotify uint16 = 4175
+ PlayerApplyEnterMpRsp uint16 = 1822
+ PlayerCancelMatchReq uint16 = 4185
+ PlayerCancelMatchRsp uint16 = 4177
+ PlayerChatCDNotify uint16 = 3450
+ PlayerChatNotify uint16 = 3265
+ PlayerChatReq uint16 = 3305
+ PlayerChatRsp uint16 = 3087
+ PlayerCompoundMaterialBoostReq uint16 = 159
+ PlayerCompoundMaterialBoostRsp uint16 = 129
+ PlayerCompoundMaterialReq uint16 = 146
+ PlayerCompoundMaterialRsp uint16 = 175
+ PlayerConfirmMatchReq uint16 = 4167
+ PlayerConfirmMatchRsp uint16 = 4162
+ PlayerCookArgsReq uint16 = 109
+ PlayerCookArgsRsp uint16 = 188
+ PlayerCookReq uint16 = 105
+ PlayerCookRsp uint16 = 194
+ PlayerDataNotify uint16 = 147
+ PlayerDeathZoneNotify uint16 = 6272
+ PlayerEnterDungeonReq uint16 = 956
+ PlayerEnterDungeonRsp uint16 = 919
+ PlayerEnterSceneInfoNotify uint16 = 241
+ PlayerEnterSceneNotify uint16 = 279
+ PlayerEyePointStateNotify uint16 = 3079
+ PlayerFishingDataNotify uint16 = 5821
+ PlayerForceExitReq uint16 = 126
+ PlayerForceExitRsp uint16 = 177
+ PlayerGameTimeByLuaNotify uint16 = 186
+ PlayerGameTimeNotify uint16 = 127
+ PlayerGCGMatchConfirmNotify uint16 = 4171
+ PlayerGCGMatchDismissNotify uint16 = 4180
+ PlayerGeneralMatchConfirmNotify uint16 = 4195
+ PlayerGeneralMatchDismissNotify uint16 = 4158
+ PlayerGetForceQuitBanInfoReq uint16 = 4152
+ PlayerGetForceQuitBanInfoRsp uint16 = 4193
+ PlayerHomeCompInfoNotify uint16 = 4818
+ PlayerInjectFixNotify uint16 = 165
+ PlayerInvestigationAllInfoNotify uint16 = 1916
+ PlayerInvestigationNotify uint16 = 1915
+ PlayerInvestigationTargetNotify uint16 = 1902
+ PlayerLevelRewardUpdateNotify uint16 = 104
+ PlayerLoginReq uint16 = 156
+ PlayerLoginRsp uint16 = 119
+ PlayerLogoutNotify uint16 = 161
+ PlayerLogoutReq uint16 = 200
+ PlayerLogoutRsp uint16 = 143
+ PlayerLuaShellNotify uint16 = 166
+ PlayerMatchAgreedResultNotify uint16 = 4165
+ PlayerMatchInfoNotify uint16 = 4172
PlayerMatchStopNotify uint16 = 4181
- PlayerMatchSuccNotify uint16 = 4179
- PlayerNicknameAuditDataNotify uint16 = 108
- PlayerNicknameNotify uint16 = 109
- PlayerOfferingDataNotify uint16 = 2923
- PlayerOfferingReq uint16 = 2907
- PlayerOfferingRsp uint16 = 2917
- PlayerPreEnterMpNotify uint16 = 1822
- PlayerPropChangeNotify uint16 = 139
- PlayerPropChangeReasonNotify uint16 = 1299
- PlayerPropNotify uint16 = 175
- PlayerQuitDungeonReq uint16 = 907
- PlayerQuitDungeonRsp uint16 = 921
- PlayerQuitFromHomeNotify uint16 = 4656
- PlayerQuitFromMpNotify uint16 = 1829
- PlayerRandomCookReq uint16 = 126
- PlayerRandomCookRsp uint16 = 163
- PlayerRechargeDataNotify uint16 = 4102
- PlayerReportReq uint16 = 4024
- PlayerReportRsp uint16 = 4056
- PlayerRoutineDataNotify uint16 = 3526
- PlayerSetLanguageReq uint16 = 142
- PlayerSetLanguageRsp uint16 = 130
- PlayerSetOnlyMPWithPSPlayerReq uint16 = 1820
- PlayerSetOnlyMPWithPSPlayerRsp uint16 = 1845
- PlayerSetPauseReq uint16 = 124
- PlayerSetPauseRsp uint16 = 156
- PlayerSignatureAuditDataNotify uint16 = 4060
- PlayerSignatureNotify uint16 = 4014
- PlayerStartMatchReq uint16 = 4176
- PlayerStartMatchRsp uint16 = 4168
- PlayerStoreNotify uint16 = 672
- PlayerTimeNotify uint16 = 191
- PlayerWorldSceneInfoListNotify uint16 = 3129
- PostEnterSceneReq uint16 = 3312
- PostEnterSceneRsp uint16 = 3184
- PotionEnterDungeonNotify uint16 = 8531
- PotionEnterDungeonReq uint16 = 8261
- PotionEnterDungeonRsp uint16 = 8482
- PotionResetChallengeReq uint16 = 8377
- PotionResetChallengeRsp uint16 = 8067
- PotionRestartDungeonReq uint16 = 8273
- PotionRestartDungeonRsp uint16 = 8062
- PotionSaveDungeonResultReq uint16 = 8192
- PotionSaveDungeonResultRsp uint16 = 8688
- PrivateChatNotify uint16 = 4962
- PrivateChatReq uint16 = 5022
- PrivateChatRsp uint16 = 5048
- ProfilePictureChangeNotify uint16 = 4016
- ProjectorOptionReq uint16 = 863
- ProjectorOptionRsp uint16 = 895
- ProudSkillChangeNotify uint16 = 1031
- ProudSkillExtraLevelNotify uint16 = 1081
- ProudSkillUpgradeReq uint16 = 1073
- ProudSkillUpgradeRsp uint16 = 1099
- PublishCustomDungeonReq uint16 = 6242
- PublishCustomDungeonRsp uint16 = 6214
- PublishUgcReq uint16 = 6344
- PublishUgcRsp uint16 = 6349
- PullPrivateChatReq uint16 = 4971
- PullPrivateChatRsp uint16 = 4953
- PullRecentChatReq uint16 = 5040
- PullRecentChatRsp uint16 = 5023
- PushTipsAllDataNotify uint16 = 2222
- PushTipsChangeNotify uint16 = 2265
- PushTipsReadFinishReq uint16 = 2204
- PushTipsReadFinishRsp uint16 = 2293
- QueryCodexMonsterBeKilledNumReq uint16 = 4203
- QueryCodexMonsterBeKilledNumRsp uint16 = 4209
- QueryPathReq uint16 = 2372
- QueryPathRsp uint16 = 2398
- QuestCreateEntityReq uint16 = 499
- QuestCreateEntityRsp uint16 = 431
- QuestDelNotify uint16 = 412
- QuestDestroyEntityReq uint16 = 475
+ PlayerMatchSuccNotify uint16 = 4194
+ PlayerNicknameAuditDataNotify uint16 = 162
+ PlayerNicknameNotify uint16 = 151
+ PlayerOfferingDataNotify uint16 = 2911
+ PlayerOfferingReq uint16 = 2915
+ PlayerOfferingRsp uint16 = 2916
+ PlayerPreEnterMpNotify uint16 = 1817
+ PlayerPropChangeNotify uint16 = 116
+ PlayerPropChangeReasonNotify uint16 = 1257
+ PlayerPropNotify uint16 = 139
+ PlayerQuitDungeonReq uint16 = 1000
+ PlayerQuitDungeonRsp uint16 = 943
+ PlayerQuitFromHomeNotify uint16 = 4724
+ PlayerQuitFromMpNotify uint16 = 1844
+ PlayerRandomCookReq uint16 = 172
+ PlayerRandomCookRsp uint16 = 103
+ PlayerRechargeDataNotify uint16 = 4127
+ PlayerReportReq uint16 = 4022
+ PlayerReportRsp uint16 = 4082
+ PlayerRoutineDataNotify uint16 = 3542
+ PlayerSetLanguageReq uint16 = 111
+ PlayerSetLanguageRsp uint16 = 150
+ PlayerSetOnlyMPWithPSPlayerReq uint16 = 1815
+ PlayerSetOnlyMPWithPSPlayerRsp uint16 = 1818
+ PlayerSetPauseReq uint16 = 122
+ PlayerSetPauseRsp uint16 = 182
+ PlayerSignatureAuditDataNotify uint16 = 4036
+ PlayerSignatureNotify uint16 = 4041
+ PlayerStartMatchReq uint16 = 4192
+ PlayerStartMatchRsp uint16 = 4191
+ PlayerStoreNotify uint16 = 679
+ PlayerTimeNotify uint16 = 121
+ PlayerWorldSceneInfoListNotify uint16 = 3059
+ PostEnterSceneReq uint16 = 3286
+ PostEnterSceneRsp uint16 = 3094
+ PotionEnterDungeonNotify uint16 = 8777
+ PotionEnterDungeonReq uint16 = 8945
+ PotionEnterDungeonRsp uint16 = 8679
+ PotionResetChallengeReq uint16 = 8331
+ PotionResetChallengeRsp uint16 = 8804
+ PotionRestartDungeonReq uint16 = 8575
+ PotionRestartDungeonRsp uint16 = 8492
+ PotionSaveDungeonResultReq uint16 = 8672
+ PotionSaveDungeonResultRsp uint16 = 8579
+ PrivateChatNotify uint16 = 5006
+ PrivateChatReq uint16 = 5029
+ PrivateChatRsp uint16 = 4980
+ ProfilePictureChangeNotify uint16 = 4023
+ ProjectorOptionReq uint16 = 803
+ ProjectorOptionRsp uint16 = 833
+ ProudSkillChangeNotify uint16 = 1027
+ ProudSkillExtraLevelNotify uint16 = 1025
+ ProudSkillUpgradeReq uint16 = 1078
+ ProudSkillUpgradeRsp uint16 = 1057
+ PSNBlackListNotify uint16 = 4085
+ PSNFriendListNotify uint16 = 4087
+ PSPlayerApplyEnterMpReq uint16 = 1808
+ PSPlayerApplyEnterMpRsp uint16 = 1845
+ PublishCustomDungeonReq uint16 = 6245
+ PublishCustomDungeonRsp uint16 = 6202
+ PublishUgcReq uint16 = 6312
+ PublishUgcRsp uint16 = 6334
+ PullPrivateChatReq uint16 = 4993
+ PullPrivateChatRsp uint16 = 5011
+ PullRecentChatReq uint16 = 4997
+ PullRecentChatRsp uint16 = 5028
+ PushTipsAllDataNotify uint16 = 2237
+ PushTipsChangeNotify uint16 = 2289
+ PushTipsReadFinishReq uint16 = 2244
+ PushTipsReadFinishRsp uint16 = 2207
+ QueryCodexMonsterBeKilledNumReq uint16 = 4204
+ QueryCodexMonsterBeKilledNumRsp uint16 = 4202
+ QueryPathReq uint16 = 2379
+ QueryPathRsp uint16 = 2330
+ QuestCreateEntityReq uint16 = 457
+ QuestCreateEntityRsp uint16 = 427
+ QuestDelNotify uint16 = 456
+ QuestDestroyEntityReq uint16 = 439
QuestDestroyEntityRsp uint16 = 448
- QuestDestroyNpcReq uint16 = 422
- QuestDestroyNpcRsp uint16 = 465
- QuestGlobalVarNotify uint16 = 434
- QuestListNotify uint16 = 472
- QuestListUpdateNotify uint16 = 498
- QuestProgressUpdateNotify uint16 = 482
- QuestTransmitReq uint16 = 450
- QuestTransmitRsp uint16 = 443
- QuestUpdateQuestTimeVarNotify uint16 = 456
- QuestUpdateQuestVarNotify uint16 = 453
- QuestUpdateQuestVarReq uint16 = 447
- QuestUpdateQuestVarRsp uint16 = 439
- QuickOpenActivityReq uint16 = 8178
- QuickOpenActivityRsp uint16 = 8882
- QuickUseWidgetReq uint16 = 4299
- QuickUseWidgetRsp uint16 = 4270
- ReadMailNotify uint16 = 1412
- ReadNicknameAuditReq uint16 = 177
- ReadNicknameAuditRsp uint16 = 137
- ReadPrivateChatReq uint16 = 5049
- ReadPrivateChatRsp uint16 = 4981
- ReadSignatureAuditReq uint16 = 4020
- ReadSignatureAuditRsp uint16 = 4064
- ReceivedTrialAvatarActivityRewardReq uint16 = 2130
- ReceivedTrialAvatarActivityRewardRsp uint16 = 2076
- RechargeReq uint16 = 4126
- RechargeRsp uint16 = 4118
- RedeemLegendaryKeyReq uint16 = 446
- RedeemLegendaryKeyRsp uint16 = 441
- ReformFireworksReq uint16 = 6036
- ReformFireworksRsp uint16 = 5929
- RefreshBackgroundAvatarReq uint16 = 1743
- RefreshBackgroundAvatarRsp uint16 = 1800
- RefreshEntityAuthNotify uint16 = 3259
- RefreshRogueDiaryCardReq uint16 = 8991
- RefreshRogueDiaryCardRsp uint16 = 8028
- RefreshRoguelikeDungeonCardReq uint16 = 8279
- RefreshRoguelikeDungeonCardRsp uint16 = 8349
- RegionSearchChangeRegionNotify uint16 = 5618
- RegionSearchNotify uint16 = 5626
- RegionalPlayInfoNotify uint16 = 6276
- ReliquaryDecomposeReq uint16 = 638
- ReliquaryDecomposeRsp uint16 = 611
- ReliquaryPromoteReq uint16 = 627
- ReliquaryPromoteRsp uint16 = 694
- ReliquaryUpgradeReq uint16 = 604
- ReliquaryUpgradeRsp uint16 = 693
- RemotePlayerWidgetNotify uint16 = 5995
- RemoveBlacklistReq uint16 = 4063
- RemoveBlacklistRsp uint16 = 4095
- RemoveCustomDungeonReq uint16 = 6249
- RemoveCustomDungeonRsp uint16 = 6220
- RemoveRandTaskInfoNotify uint16 = 161
- ReplayCustomDungeonReq uint16 = 6243
- ReplayCustomDungeonRsp uint16 = 6240
- ReportFightAntiCheatNotify uint16 = 368
- ReportTrackingIOInfoNotify uint16 = 4129
- RequestLiveInfoReq uint16 = 894
- RequestLiveInfoRsp uint16 = 888
- ReserveRogueDiaryAvatarReq uint16 = 8748
- ReserveRogueDiaryAvatarRsp uint16 = 8799
- ResetRogueDiaryPlayReq uint16 = 8127
- ResetRogueDiaryPlayRsp uint16 = 8948
- ResinCardDataUpdateNotify uint16 = 4149
- ResinChangeNotify uint16 = 642
- RestartEffigyChallengeReq uint16 = 2148
- RestartEffigyChallengeRsp uint16 = 2042
- ResumeRogueDiaryDungeonReq uint16 = 8838
- ResumeRogueDiaryDungeonRsp uint16 = 8989
- RetryCurRogueDiaryDungeonReq uint16 = 8398
- RetryCurRogueDiaryDungeonRsp uint16 = 8334
- ReunionActivateNotify uint16 = 5085
- ReunionBriefInfoReq uint16 = 5076
- ReunionBriefInfoRsp uint16 = 5068
- ReunionDailyRefreshNotify uint16 = 5100
- ReunionPrivilegeChangeNotify uint16 = 5098
- ReunionSettleNotify uint16 = 5073
- RobotPushPlayerDataNotify uint16 = 97
- RogueCellUpdateNotify uint16 = 8642
- RogueDiaryCoinAddNotify uint16 = 8602
- RogueDiaryDungeonInfoNotify uint16 = 8597
- RogueDiaryDungeonSettleNotify uint16 = 8895
- RogueDiaryRepairInfoNotify uint16 = 8641
- RogueDiaryReviveAvatarReq uint16 = 8038
- RogueDiaryReviveAvatarRsp uint16 = 8343
- RogueDiaryTiredAvatarNotify uint16 = 8514
- RogueDungeonPlayerCellChangeNotify uint16 = 8347
- RogueFinishRepairReq uint16 = 8363
- RogueFinishRepairRsp uint16 = 8535
- RogueHealAvatarsReq uint16 = 8947
- RogueHealAvatarsRsp uint16 = 8949
- RogueResumeDungeonReq uint16 = 8795
- RogueResumeDungeonRsp uint16 = 8647
- RogueSwitchAvatarReq uint16 = 8201
- RogueSwitchAvatarRsp uint16 = 8915
- RoguelikeCardGachaNotify uint16 = 8925
- RoguelikeEffectDataNotify uint16 = 8222
- RoguelikeEffectViewReq uint16 = 8528
- RoguelikeEffectViewRsp uint16 = 8639
- RoguelikeGiveUpReq uint16 = 8660
- RoguelikeGiveUpRsp uint16 = 8139
- RoguelikeMistClearNotify uint16 = 8324
- RoguelikeRefreshCardCostUpdateNotify uint16 = 8927
- RoguelikeResourceBonusPropUpdateNotify uint16 = 8555
- RoguelikeRuneRecordUpdateNotify uint16 = 8973
- RoguelikeSelectAvatarAndEnterDungeonReq uint16 = 8457
- RoguelikeSelectAvatarAndEnterDungeonRsp uint16 = 8538
- RoguelikeTakeStageFirstPassRewardReq uint16 = 8421
- RoguelikeTakeStageFirstPassRewardRsp uint16 = 8552
- SalesmanDeliverItemReq uint16 = 2138
- SalesmanDeliverItemRsp uint16 = 2104
- SalesmanTakeRewardReq uint16 = 2191
- SalesmanTakeRewardRsp uint16 = 2110
- SalesmanTakeSpecialRewardReq uint16 = 2145
- SalesmanTakeSpecialRewardRsp uint16 = 2124
- SalvageEscortRestartReq uint16 = 8396
- SalvageEscortRestartRsp uint16 = 8959
- SalvageEscortSettleNotify uint16 = 8499
- SalvagePreventRestartReq uint16 = 8367
- SalvagePreventRestartRsp uint16 = 8938
- SalvagePreventSettleNotify uint16 = 8231
- SaveCoopDialogReq uint16 = 2000
- SaveCoopDialogRsp uint16 = 1962
- SaveCustomDungeonRoomReq uint16 = 6225
- SaveCustomDungeonRoomRsp uint16 = 6207
- SaveMainCoopReq uint16 = 1975
- SaveMainCoopRsp uint16 = 1957
- SaveUgcReq uint16 = 6329
- SaveUgcRsp uint16 = 6322
- SceneAreaUnlockNotify uint16 = 293
- SceneAreaWeatherNotify uint16 = 230
- SceneAudioNotify uint16 = 3166
- SceneAvatarStaminaStepReq uint16 = 299
- SceneAvatarStaminaStepRsp uint16 = 231
- SceneCreateEntityReq uint16 = 288
- SceneCreateEntityRsp uint16 = 226
- SceneDataNotify uint16 = 3203
- SceneDestroyEntityReq uint16 = 263
- SceneDestroyEntityRsp uint16 = 295
- SceneEntitiesMoveCombineNotify uint16 = 3387
- SceneEntitiesMovesReq uint16 = 279
- SceneEntitiesMovesRsp uint16 = 255
- SceneEntityAppearNotify uint16 = 221
- SceneEntityDisappearNotify uint16 = 203
- SceneEntityDrownReq uint16 = 227
- SceneEntityDrownRsp uint16 = 294
- SceneEntityMoveNotify uint16 = 275
- SceneEntityMoveReq uint16 = 290
- SceneEntityMoveRsp uint16 = 273
- SceneEntityUpdateNotify uint16 = 3412
- SceneForceLockNotify uint16 = 234
- SceneForceUnlockNotify uint16 = 206
- SceneGalleryInfoNotify uint16 = 5581
- SceneGalleryVintageHuntingSettleNotify uint16 = 20324
- SceneInitFinishReq uint16 = 235
- SceneInitFinishRsp uint16 = 207
- SceneKickPlayerNotify uint16 = 211
- SceneKickPlayerReq uint16 = 264
- SceneKickPlayerRsp uint16 = 238
- ScenePlayBattleInfoListNotify uint16 = 4431
- ScenePlayBattleInfoNotify uint16 = 4422
- ScenePlayBattleInterruptNotify uint16 = 4425
+ QuestDestroyNpcReq uint16 = 437
+ QuestDestroyNpcRsp uint16 = 489
+ QuestGlobalVarNotify uint16 = 480
+ QuestListNotify uint16 = 479
+ QuestListUpdateNotify uint16 = 430
+ QuestProgressUpdateNotify uint16 = 490
+ QuestRenameAvatarReq uint16 = 487
+ QuestRenameAvatarRsp uint16 = 485
+ QuestTransmitReq uint16 = 446
+ QuestTransmitRsp uint16 = 475
+ QuestUpdateQuestTimeVarNotify uint16 = 482
+ QuestUpdateQuestVarNotify uint16 = 473
+ QuestUpdateQuestVarReq uint16 = 476
+ QuestUpdateQuestVarRsp uint16 = 416
+ QuickOpenActivityReq uint16 = 8302
+ QuickOpenActivityRsp uint16 = 8677
+ QuickUseWidgetReq uint16 = 4284
+ QuickUseWidgetRsp uint16 = 4265
+ ReadMailNotify uint16 = 1456
+ ReadNicknameAuditReq uint16 = 132
+ ReadNicknameAuditRsp uint16 = 168
+ ReadPrivateChatReq uint16 = 5007
+ ReadPrivateChatRsp uint16 = 4977
+ ReadSignatureAuditReq uint16 = 4002
+ ReadSignatureAuditRsp uint16 = 4012
+ ReceivedTrialAvatarActivityRewardReq uint16 = 2155
+ ReceivedTrialAvatarActivityRewardRsp uint16 = 2175
+ RechargeReq uint16 = 4142
+ RechargeRsp uint16 = 4141
+ RedeemLegendaryKeyReq uint16 = 464
+ RedeemLegendaryKeyRsp uint16 = 467
+ ReformFireworksReq uint16 = 6074
+ ReformFireworksRsp uint16 = 6062
+ RefreshBackgroundAvatarReq uint16 = 1765
+ RefreshBackgroundAvatarRsp uint16 = 1744
+ RefreshEntityAuthNotify uint16 = 3099
+ RefreshRogueDiaryCardReq uint16 = 8868
+ RefreshRogueDiaryCardRsp uint16 = 8359
+ RefreshRoguelikeDungeonCardReq uint16 = 8065
+ RefreshRoguelikeDungeonCardRsp uint16 = 8994
+ RegionalPlayInfoNotify uint16 = 6292
+ RegionSearchChangeRegionNotify uint16 = 5641
+ RegionSearchNotify uint16 = 5642
+ ReliquaryDecomposeReq uint16 = 631
+ ReliquaryDecomposeRsp uint16 = 601
+ ReliquaryFilterStateNotify uint16 = 669
+ ReliquaryFilterStateSaveNotify uint16 = 638
+ ReliquaryPromoteReq uint16 = 617
+ ReliquaryPromoteRsp uint16 = 605
+ ReliquaryUpgradeReq uint16 = 644
+ ReliquaryUpgradeRsp uint16 = 607
+ RemotePlayerWidgetNotify uint16 = 5910
+ RemoveBlacklistReq uint16 = 4003
+ RemoveBlacklistRsp uint16 = 4033
+ RemoveCustomDungeonReq uint16 = 6234
+ RemoveCustomDungeonRsp uint16 = 6215
+ RemoveRandTaskInfoNotify uint16 = 198
+ ReplayCustomDungeonReq uint16 = 6214
+ ReplayCustomDungeonRsp uint16 = 6248
+ ReportFightAntiCheatNotify uint16 = 388
+ ReportTrackingIOInfoNotify uint16 = 4144
+ RequestLiveInfoReq uint16 = 805
+ RequestLiveInfoRsp uint16 = 894
+ ReserveRogueDiaryAvatarReq uint16 = 8311
+ ReserveRogueDiaryAvatarRsp uint16 = 8901
+ ResetRogueDiaryPlayReq uint16 = 8125
+ ResetRogueDiaryPlayRsp uint16 = 8943
+ ResinCardDataUpdateNotify uint16 = 4134
+ ResinChangeNotify uint16 = 611
+ RestartCoinCollectPlaySingleModeReq uint16 = 21382
+ RestartCoinCollectPlaySingleModeRsp uint16 = 23294
+ RestartEffigyChallengeReq uint16 = 2051
+ RestartEffigyChallengeRsp uint16 = 2172
+ ResumeRogueDiaryDungeonReq uint16 = 8704
+ ResumeRogueDiaryDungeonRsp uint16 = 8332
+ RetryCurRogueDiaryDungeonReq uint16 = 8696
+ RetryCurRogueDiaryDungeonRsp uint16 = 8269
+ ReunionActivateNotify uint16 = 5071
+ ReunionBriefInfoReq uint16 = 5092
+ ReunionBriefInfoRsp uint16 = 5091
+ ReunionDailyRefreshNotify uint16 = 5054
+ ReunionPrivilegeChangeNotify uint16 = 5087
+ ReunionSettleNotify uint16 = 5080
+ RobotPushPlayerDataNotify uint16 = 99
+ RogueCellUpdateNotify uint16 = 8851
+ RogueDiaryCoinAddNotify uint16 = 8525
+ RogueDiaryDungeonInfoNotify uint16 = 8096
+ RogueDiaryDungeonSettleNotify uint16 = 8726
+ RogueDiaryRepairInfoNotify uint16 = 8084
+ RogueDiaryReviveAvatarReq uint16 = 8678
+ RogueDiaryReviveAvatarRsp uint16 = 8061
+ RogueDiaryTiredAvatarNotify uint16 = 8660
+ RogueDungeonPlayerCellChangeNotify uint16 = 8093
+ RogueFinishRepairReq uint16 = 8483
+ RogueFinishRepairRsp uint16 = 8503
+ RogueHealAvatarsReq uint16 = 8175
+ RogueHealAvatarsRsp uint16 = 8252
+ RoguelikeCardGachaNotify uint16 = 8057
+ RoguelikeEffectDataNotify uint16 = 8544
+ RoguelikeEffectViewReq uint16 = 8605
+ RoguelikeEffectViewRsp uint16 = 8437
+ RoguelikeGiveUpReq uint16 = 8442
+ RoguelikeGiveUpRsp uint16 = 8905
+ RoguelikeMistClearNotify uint16 = 8768
+ RoguelikeRefreshCardCostUpdateNotify uint16 = 8210
+ RoguelikeResourceBonusPropUpdateNotify uint16 = 8426
+ RoguelikeRuneRecordUpdateNotify uint16 = 8629
+ RoguelikeSelectAvatarAndEnterDungeonReq uint16 = 8988
+ RoguelikeSelectAvatarAndEnterDungeonRsp uint16 = 8910
+ RoguelikeTakeStageFirstPassRewardReq uint16 = 8531
+ RoguelikeTakeStageFirstPassRewardRsp uint16 = 8182
+ RogueResumeDungeonReq uint16 = 8275
+ RogueResumeDungeonRsp uint16 = 8772
+ RogueSwitchAvatarReq uint16 = 8399
+ RogueSwitchAvatarRsp uint16 = 8445
+ SalesmanDeliverItemReq uint16 = 2057
+ SalesmanDeliverItemRsp uint16 = 2151
+ SalesmanTakeRewardReq uint16 = 2069
+ SalesmanTakeRewardRsp uint16 = 2026
+ SalesmanTakeSpecialRewardReq uint16 = 2067
+ SalesmanTakeSpecialRewardRsp uint16 = 2044
+ SalvageEscortRestartReq uint16 = 8520
+ SalvageEscortRestartRsp uint16 = 8553
+ SalvageEscortSettleNotify uint16 = 8798
+ SalvagePreventRestartReq uint16 = 8796
+ SalvagePreventRestartRsp uint16 = 8493
+ SalvagePreventSettleNotify uint16 = 8435
+ SaveCoopDialogReq uint16 = 1954
+ SaveCoopDialogRsp uint16 = 1960
+ SaveCustomDungeonRoomReq uint16 = 6222
+ SaveCustomDungeonRoomRsp uint16 = 6235
+ SaveMainCoopReq uint16 = 1972
+ SaveMainCoopRsp uint16 = 1985
+ SaveUgcReq uint16 = 6344
+ SaveUgcRsp uint16 = 6317
+ SceneAreaUnlockNotify uint16 = 207
+ SceneAreaWeatherNotify uint16 = 250
+ SceneAudioNotify uint16 = 3009
+ SceneAvatarStaminaStepReq uint16 = 257
+ SceneAvatarStaminaStepRsp uint16 = 227
+ SceneCreateEntityReq uint16 = 294
+ SceneCreateEntityRsp uint16 = 272
+ SceneDataNotify uint16 = 3368
+ SceneDestroyEntityReq uint16 = 203
+ SceneDestroyEntityRsp uint16 = 233
+ SceneEntitiesMoveCombineNotify uint16 = 3452
+ SceneEntitiesMovesReq uint16 = 292
+ SceneEntitiesMovesRsp uint16 = 245
+ SceneEntityAppearNotify uint16 = 243
+ SceneEntityDisappearNotify uint16 = 261
+ SceneEntityDrownReq uint16 = 217
+ SceneEntityDrownRsp uint16 = 205
+ SceneEntityMoveNotify uint16 = 239
+ SceneEntityMoveReq uint16 = 247
+ SceneEntityMoveRsp uint16 = 278
+ SceneEntityUpdateNotify uint16 = 3115
+ SceneForceLockNotify uint16 = 280
+ SceneForceUnlockNotify uint16 = 210
+ SceneGalleryInfoNotify uint16 = 5525
+ SceneGalleryVintageHuntingSettleNotify uint16 = 22325
+ SceneInitFinishReq uint16 = 219
+ SceneInitFinishRsp uint16 = 300
+ SceneKickPlayerNotify uint16 = 201
+ SceneKickPlayerReq uint16 = 212
+ SceneKickPlayerRsp uint16 = 231
+ ScenePlayBattleInfoListNotify uint16 = 4375
+ ScenePlayBattleInfoNotify uint16 = 4429
+ ScenePlayBattleInterruptNotify uint16 = 4389
ScenePlayBattleResultNotify uint16 = 4398
- ScenePlayBattleUidOpNotify uint16 = 4447
- ScenePlayGuestReplyInviteReq uint16 = 4353
- ScenePlayGuestReplyInviteRsp uint16 = 4440
- ScenePlayGuestReplyNotify uint16 = 4423
- ScenePlayInfoListNotify uint16 = 4381
- ScenePlayInviteResultNotify uint16 = 4449
- ScenePlayOutofRegionNotify uint16 = 4355
- ScenePlayOwnerCheckReq uint16 = 4448
- ScenePlayOwnerCheckRsp uint16 = 4362
- ScenePlayOwnerInviteNotify uint16 = 4371
- ScenePlayOwnerStartInviteReq uint16 = 4385
- ScenePlayOwnerStartInviteRsp uint16 = 4357
- ScenePlayerBackgroundAvatarRefreshNotify uint16 = 3274
- ScenePlayerInfoNotify uint16 = 267
+ ScenePlayBattleUidOpNotify uint16 = 4449
+ ScenePlayerBackgroundAvatarRefreshNotify uint16 = 3388
+ ScenePlayerInfoNotify uint16 = 253
ScenePlayerLocationNotify uint16 = 248
- ScenePlayerSoundNotify uint16 = 233
- ScenePointUnlockNotify uint16 = 247
- SceneRouteChangeNotify uint16 = 240
- SceneTeamUpdateNotify uint16 = 1775
- SceneTimeNotify uint16 = 245
- SceneTransToPointReq uint16 = 239
- SceneTransToPointRsp uint16 = 253
- SceneWeatherForecastReq uint16 = 3110
- SceneWeatherForecastRsp uint16 = 3012
- SeaLampCoinNotify uint16 = 2114
- SeaLampContributeItemReq uint16 = 2123
- SeaLampContributeItemRsp uint16 = 2139
- SeaLampFlyLampNotify uint16 = 2105
- SeaLampFlyLampReq uint16 = 2199
- SeaLampFlyLampRsp uint16 = 2192
- SeaLampPopularityNotify uint16 = 2032
- SeaLampTakeContributionRewardReq uint16 = 2019
- SeaLampTakeContributionRewardRsp uint16 = 2177
- SeaLampTakePhaseRewardReq uint16 = 2176
- SeaLampTakePhaseRewardRsp uint16 = 2190
- SealBattleBeginNotify uint16 = 289
- SealBattleEndNotify uint16 = 259
- SealBattleProgressNotify uint16 = 232
- SearchCustomDungeonReq uint16 = 6233
- SearchCustomDungeonRsp uint16 = 6215
- SeeMonsterReq uint16 = 228
- SeeMonsterRsp uint16 = 251
- SelectAsterMidDifficultyReq uint16 = 2134
- SelectAsterMidDifficultyRsp uint16 = 2180
- SelectEffigyChallengeConditionReq uint16 = 2064
- SelectEffigyChallengeConditionRsp uint16 = 2039
- SelectRoguelikeDungeonCardReq uint16 = 8085
- SelectRoguelikeDungeonCardRsp uint16 = 8138
- SelectWorktopOptionReq uint16 = 807
- SelectWorktopOptionRsp uint16 = 821
- ServerAnnounceNotify uint16 = 2197
- ServerAnnounceRevokeNotify uint16 = 2092
- ServerBuffChangeNotify uint16 = 361
- ServerCombatEndNotify uint16 = 1105
- ServerCondMeetQuestListUpdateNotify uint16 = 406
- ServerDisconnectClientNotify uint16 = 184
- ServerGlobalValueChangeNotify uint16 = 1197
- ServerLogNotify uint16 = 31
- ServerMessageNotify uint16 = 5718
- ServerTimeNotify uint16 = 99
- ServerTryCancelGeneralMatchNotify uint16 = 4187
+ ScenePlayerSoundNotify uint16 = 266
+ ScenePlayGuestReplyInviteReq uint16 = 4411
+ ScenePlayGuestReplyInviteRsp uint16 = 4397
+ ScenePlayGuestReplyNotify uint16 = 4428
+ ScenePlayInfoListNotify uint16 = 4377
+ ScenePlayInviteResultNotify uint16 = 4407
+ ScenePlayOutofRegionNotify uint16 = 4392
+ ScenePlayOwnerCheckReq uint16 = 4380
+ ScenePlayOwnerCheckRsp uint16 = 4406
+ ScenePlayOwnerInviteNotify uint16 = 4393
+ ScenePlayOwnerStartInviteReq uint16 = 4369
+ ScenePlayOwnerStartInviteRsp uint16 = 4450
+ ScenePointUnlockNotify uint16 = 276
+ SceneRouteChangeNotify uint16 = 285
+ SceneTeamUpdateNotify uint16 = 1728
+ SceneTimeNotify uint16 = 296
+ SceneTransToPointReq uint16 = 216
+ SceneTransToPointRsp uint16 = 273
+ SceneWeatherForecastReq uint16 = 3350
+ SceneWeatherForecastRsp uint16 = 3064
+ SeaLampCoinNotify uint16 = 2188
+ SeaLampContributeItemReq uint16 = 2133
+ SeaLampContributeItemRsp uint16 = 2116
+ SeaLampFlyLampNotify uint16 = 2114
+ SeaLampFlyLampReq uint16 = 2187
+ SeaLampFlyLampRsp uint16 = 2161
+ SeaLampPopularityNotify uint16 = 2135
+ SeaLampTakeContributionRewardReq uint16 = 2199
+ SeaLampTakeContributionRewardRsp uint16 = 2003
+ SeaLampTakePhaseRewardReq uint16 = 2006
+ SeaLampTakePhaseRewardRsp uint16 = 2105
+ SealBattleBeginNotify uint16 = 226
+ SealBattleEndNotify uint16 = 277
+ SealBattleProgressNotify uint16 = 265
+ SearchCustomDungeonReq uint16 = 6201
+ SearchCustomDungeonRsp uint16 = 6239
+ SeeMonsterReq uint16 = 206
+ SeeMonsterRsp uint16 = 255
+ SelectAsterMidDifficultyReq uint16 = 2060
+ SelectAsterMidDifficultyRsp uint16 = 2101
+ SelectEffigyChallengeConditionReq uint16 = 2131
+ SelectEffigyChallengeConditionRsp uint16 = 2110
+ SelectRoguelikeDungeonCardReq uint16 = 8529
+ SelectRoguelikeDungeonCardRsp uint16 = 8720
+ SelectWorktopOptionReq uint16 = 900
+ SelectWorktopOptionRsp uint16 = 843
+ ServerAnnounceNotify uint16 = 2129
+ ServerAnnounceRevokeNotify uint16 = 2064
+ ServerBuffChangeNotify uint16 = 398
+ ServerCombatEndNotify uint16 = 1142
+ ServerCondMeetQuestListUpdateNotify uint16 = 410
+ ServerDisconnectClientNotify uint16 = 152
+ ServerGlobalValueChangeNotify uint16 = 1199
+ ServerLogNotify uint16 = 27
+ ServerMessageNotify uint16 = 5741
+ ServerTimeNotify uint16 = 57
+ ServerTryCancelGeneralMatchNotify uint16 = 4159
ServerUpdateGlobalValueNotify uint16 = 1148
- SetBattlePassViewedReq uint16 = 2641
- SetBattlePassViewedRsp uint16 = 2642
- SetChatEmojiCollectionReq uint16 = 4084
- SetChatEmojiCollectionRsp uint16 = 4080
- SetCodexPushtipsReadReq uint16 = 4208
- SetCodexPushtipsReadRsp uint16 = 4206
- SetCoopChapterViewedReq uint16 = 1965
- SetCoopChapterViewedRsp uint16 = 1963
- SetCurExpeditionChallengeIdReq uint16 = 2021
- SetCurExpeditionChallengeIdRsp uint16 = 2049
- SetEntityClientDataNotify uint16 = 3146
- SetEquipLockStateReq uint16 = 666
- SetEquipLockStateRsp uint16 = 668
- SetFriendEnterHomeOptionReq uint16 = 4494
- SetFriendEnterHomeOptionRsp uint16 = 4743
- SetFriendRemarkNameReq uint16 = 4042
- SetFriendRemarkNameRsp uint16 = 4030
- SetH5ActivityRedDotTimestampReq uint16 = 5657
- SetH5ActivityRedDotTimestampRsp uint16 = 5652
- SetIsAutoUnlockSpecificEquipReq uint16 = 620
- SetIsAutoUnlockSpecificEquipRsp uint16 = 664
- SetLimitOptimizationNotify uint16 = 8851
- SetNameCardReq uint16 = 4004
- SetNameCardRsp uint16 = 4093
- SetOpenStateReq uint16 = 165
- SetOpenStateRsp uint16 = 104
+ SetBattlePassViewedReq uint16 = 2608
+ SetBattlePassViewedRsp uint16 = 2645
+ SetChatEmojiCollectionReq uint16 = 4052
+ SetChatEmojiCollectionRsp uint16 = 4074
+ SetCodexPushtipsReadReq uint16 = 4209
+ SetCodexPushtipsReadRsp uint16 = 4205
+ SetCoopChapterViewedReq uint16 = 1989
+ SetCoopChapterViewedRsp uint16 = 2000
+ SetCurExpeditionChallengeIdReq uint16 = 2028
+ SetCurExpeditionChallengeIdRsp uint16 = 2005
+ SetEntityClientDataNotify uint16 = 3318
+ SetEquipLockStateReq uint16 = 609
+ SetEquipLockStateRsp uint16 = 688
+ SetFriendEnterHomeOptionReq uint16 = 4853
+ SetFriendEnterHomeOptionRsp uint16 = 4526
+ SetFriendRemarkNameReq uint16 = 4011
+ SetFriendRemarkNameRsp uint16 = 4050
+ SetH5ActivityRedDotTimestampReq uint16 = 5685
+ SetH5ActivityRedDotTimestampRsp uint16 = 5677
+ SetIsAutoUnlockSpecificEquipReq uint16 = 602
+ SetIsAutoUnlockSpecificEquipRsp uint16 = 612
+ SetLimitOptimizationNotify uint16 = 8066
+ SetNameCardReq uint16 = 4044
+ SetNameCardRsp uint16 = 4007
+ SetOpenStateReq uint16 = 189
+ SetOpenStateRsp uint16 = 144
SetPlayerBirthdayReq uint16 = 4048
- SetPlayerBirthdayRsp uint16 = 4097
- SetPlayerBornDataReq uint16 = 105
- SetPlayerBornDataRsp uint16 = 182
- SetPlayerHeadImageReq uint16 = 4082
- SetPlayerHeadImageRsp uint16 = 4047
- SetPlayerNameReq uint16 = 153
- SetPlayerNameRsp uint16 = 122
- SetPlayerPropReq uint16 = 197
- SetPlayerPropRsp uint16 = 181
- SetPlayerSignatureReq uint16 = 4081
- SetPlayerSignatureRsp uint16 = 4005
- SetSceneWeatherAreaReq uint16 = 254
- SetSceneWeatherAreaRsp uint16 = 283
- SetUpAvatarTeamReq uint16 = 1690
- SetUpAvatarTeamRsp uint16 = 1646
- SetUpLunchBoxWidgetReq uint16 = 4272
- SetUpLunchBoxWidgetRsp uint16 = 4294
- SetWidgetSlotReq uint16 = 4259
- SetWidgetSlotRsp uint16 = 4277
- ShowClientGuideNotify uint16 = 3005
- ShowClientTutorialNotify uint16 = 3305
- ShowCommonTipsNotify uint16 = 3352
- ShowMessageNotify uint16 = 35
- ShowTemplateReminderNotify uint16 = 3491
- SignInInfoReq uint16 = 2512
- SignInInfoRsp uint16 = 2535
- SignatureAuditConfigNotify uint16 = 4092
- SkyCrystalDetectorDataUpdateNotify uint16 = 4287
- SocialDataNotify uint16 = 4043
- SpiceActivityFinishMakeSpiceReq uint16 = 8096
- SpiceActivityFinishMakeSpiceRsp uint16 = 8481
- SpiceActivityGivingRecordNotify uint16 = 8407
- SpiceActivityProcessFoodReq uint16 = 8216
- SpiceActivityProcessFoodRsp uint16 = 8772
- SpringUseReq uint16 = 1748
- SpringUseRsp uint16 = 1642
- StartArenaChallengeLevelReq uint16 = 2127
- StartArenaChallengeLevelRsp uint16 = 2125
- StartBuoyantCombatGalleryReq uint16 = 8732
- StartBuoyantCombatGalleryRsp uint16 = 8680
- StartCoopPointReq uint16 = 1992
- StartCoopPointRsp uint16 = 1964
- StartEffigyChallengeReq uint16 = 2169
- StartEffigyChallengeRsp uint16 = 2173
- StartFishingReq uint16 = 5825
- StartFishingRsp uint16 = 5807
- StartRogueDiaryPlayReq uint16 = 8419
- StartRogueDiaryPlayRsp uint16 = 8385
- StartRogueDiaryRoomReq uint16 = 8159
- StartRogueDiaryRoomRsp uint16 = 8793
- StartRogueEliteCellChallengeReq uint16 = 8242
- StartRogueEliteCellChallengeRsp uint16 = 8958
- StartRogueNormalCellChallengeReq uint16 = 8205
- StartRogueNormalCellChallengeRsp uint16 = 8036
- StopReminderNotify uint16 = 3004
- StoreCustomDungeonReq uint16 = 6213
- StoreCustomDungeonRsp uint16 = 6201
- StoreItemChangeNotify uint16 = 612
- StoreItemDelNotify uint16 = 635
- StoreWeightLimitNotify uint16 = 698
- SubmitInferenceWordReq uint16 = 500
- SubmitInferenceWordRsp uint16 = 416
- SummerTimeFloatSignalPositionNotify uint16 = 8077
- SummerTimeFloatSignalUpdateNotify uint16 = 8781
- SummerTimeSprintBoatRestartReq uint16 = 8410
- SummerTimeSprintBoatRestartRsp uint16 = 8356
- SummerTimeSprintBoatSettleNotify uint16 = 8651
- SummerTimeV2BoatSettleNotify uint16 = 8870
- SummerTimeV2RestartBoatGalleryReq uint16 = 8476
- SummerTimeV2RestartBoatGalleryRsp uint16 = 8004
- SummerTimeV2RestartDungeonReq uint16 = 8346
- SummerTimeV2RestartDungeonRsp uint16 = 8996
- SumoDungeonSettleNotify uint16 = 8291
- SumoEnterDungeonNotify uint16 = 8013
- SumoLeaveDungeonNotify uint16 = 8640
- SumoRestartDungeonReq uint16 = 8612
- SumoRestartDungeonRsp uint16 = 8214
- SumoSaveTeamReq uint16 = 8313
- SumoSaveTeamRsp uint16 = 8319
- SumoSelectTeamAndEnterDungeonReq uint16 = 8215
- SumoSelectTeamAndEnterDungeonRsp uint16 = 8193
- SumoSetNoSwitchPunishTimeNotify uint16 = 8935
- SumoSwitchTeamReq uint16 = 8351
- SumoSwitchTeamRsp uint16 = 8525
- SyncScenePlayTeamEntityNotify uint16 = 3333
- SyncTeamEntityNotify uint16 = 317
- TakeAchievementGoalRewardReq uint16 = 2652
+ SetPlayerBirthdayRsp uint16 = 4099
+ SetPlayerBornDataReq uint16 = 142
+ SetPlayerBornDataRsp uint16 = 190
+ SetPlayerHeadImageReq uint16 = 4090
+ SetPlayerHeadImageRsp uint16 = 4076
+ SetPlayerNameReq uint16 = 173
+ SetPlayerNameRsp uint16 = 137
+ SetPlayerPropReq uint16 = 199
+ SetPlayerPropRsp uint16 = 125
+ SetPlayerSignatureReq uint16 = 4025
+ SetPlayerSignatureRsp uint16 = 4042
+ SetSceneWeatherAreaReq uint16 = 214
+ SetSceneWeatherAreaRsp uint16 = 270
+ SetUpAvatarTeamReq uint16 = 1713
+ SetUpAvatarTeamRsp uint16 = 1622
+ SetUpLunchBoxWidgetReq uint16 = 4267
+ SetUpLunchBoxWidgetRsp uint16 = 4262
+ SetWidgetSlotReq uint16 = 4255
+ SetWidgetSlotRsp uint16 = 4261
+ ShowClientGuideNotify uint16 = 3369
+ ShowClientTutorialNotify uint16 = 3204
+ ShowCommonTipsNotify uint16 = 3065
+ ShowMessageNotify uint16 = 19
+ ShowTemplateReminderNotify uint16 = 3300
+ SignatureAuditConfigNotify uint16 = 4097
+ SignInInfoReq uint16 = 2556
+ SignInInfoRsp uint16 = 2519
+ SingleRestartBrickBreakerReq uint16 = 20021
+ SingleRestartBrickBreakerRsp uint16 = 22269
+ SingleStartBrickBreakerReq uint16 = 23663
+ SingleStartBrickBreakerRsp uint16 = 20712
+ SkyCrystalDetectorDataUpdateNotify uint16 = 4259
+ SocialDataNotify uint16 = 4075
+ SpiceActivityFinishMakeSpiceReq uint16 = 8838
+ SpiceActivityFinishMakeSpiceRsp uint16 = 8946
+ SpiceActivityGivingRecordNotify uint16 = 8719
+ SpiceActivityProcessFoodReq uint16 = 8523
+ SpiceActivityProcessFoodRsp uint16 = 8381
+ SpringUseReq uint16 = 1651
+ SpringUseRsp uint16 = 1772
+ StartArenaChallengeLevelReq uint16 = 2196
+ StartArenaChallengeLevelRsp uint16 = 2171
+ StartBuoyantCombatGalleryReq uint16 = 8427
+ StartBuoyantCombatGalleryRsp uint16 = 8969
+ StartCoopPointReq uint16 = 1995
+ StartCoopPointRsp uint16 = 1952
+ StartEffigyChallengeReq uint16 = 2157
+ StartEffigyChallengeRsp uint16 = 2169
+ StartFishingReq uint16 = 5822
+ StartFishingRsp uint16 = 5835
+ StartRogueDiaryPlayReq uint16 = 8220
+ StartRogueDiaryPlayRsp uint16 = 8881
+ StartRogueDiaryRoomReq uint16 = 8279
+ StartRogueDiaryRoomRsp uint16 = 8806
+ StartRogueEliteCellChallengeReq uint16 = 8485
+ StartRogueEliteCellChallengeRsp uint16 = 8967
+ StartRogueNormalCellChallengeReq uint16 = 8247
+ StartRogueNormalCellChallengeRsp uint16 = 8146
+ StopReminderNotify uint16 = 3119
+ StoreCustomDungeonReq uint16 = 6250
+ StoreCustomDungeonRsp uint16 = 6206
+ StoreItemChangeNotify uint16 = 656
+ StoreItemDelNotify uint16 = 619
+ StoreWeightLimitNotify uint16 = 630
+ SubmitInferenceWordReq uint16 = 404
+ SubmitInferenceWordRsp uint16 = 423
+ SummerTimeFloatSignalPositionNotify uint16 = 8701
+ SummerTimeFloatSignalUpdateNotify uint16 = 8508
+ SummerTimeSprintBoatRestartReq uint16 = 8111
+ SummerTimeSprintBoatRestartRsp uint16 = 8466
+ SummerTimeSprintBoatSettleNotify uint16 = 8451
+ SummerTimeV2BoatSettleNotify uint16 = 8153
+ SummerTimeV2RestartBoatGalleryReq uint16 = 8885
+ SummerTimeV2RestartBoatGalleryRsp uint16 = 8225
+ SummerTimeV2RestartDungeonReq uint16 = 8073
+ SummerTimeV2RestartDungeonRsp uint16 = 8686
+ SumoDungeonSettleNotify uint16 = 8434
+ SumoEnterDungeonNotify uint16 = 8297
+ SumoLeaveDungeonNotify uint16 = 8567
+ SumoRestartDungeonReq uint16 = 8725
+ SumoRestartDungeonRsp uint16 = 8276
+ SumoSaveTeamReq uint16 = 8022
+ SumoSaveTeamRsp uint16 = 8739
+ SumoSelectTeamAndEnterDungeonReq uint16 = 8978
+ SumoSelectTeamAndEnterDungeonRsp uint16 = 8744
+ SumoSetNoSwitchPunishTimeNotify uint16 = 8610
+ SumoSwitchTeamReq uint16 = 8738
+ SumoSwitchTeamRsp uint16 = 8201
+ SyncScenePlayTeamEntityNotify uint16 = 3393
+ SyncTeamEntityNotify uint16 = 391
+ TakeAchievementGoalRewardReq uint16 = 2677
TakeAchievementGoalRewardRsp uint16 = 2681
- TakeAchievementRewardReq uint16 = 2675
- TakeAchievementRewardRsp uint16 = 2657
- TakeAsterSpecialRewardReq uint16 = 2097
- TakeAsterSpecialRewardRsp uint16 = 2193
- TakeBackGivingItemReq uint16 = 171
- TakeBackGivingItemRsp uint16 = 145
- TakeBattlePassMissionPointReq uint16 = 2629
- TakeBattlePassMissionPointRsp uint16 = 2622
- TakeBattlePassRewardReq uint16 = 2602
+ TakeAchievementRewardReq uint16 = 2672
+ TakeAchievementRewardRsp uint16 = 2685
+ TakeAsterSpecialRewardReq uint16 = 2019
+ TakeAsterSpecialRewardRsp uint16 = 2132
+ TakeBackGivingItemReq uint16 = 128
+ TakeBackGivingItemRsp uint16 = 196
+ TakeBattlePassMissionPointReq uint16 = 2644
+ TakeBattlePassMissionPointRsp uint16 = 2617
+ TakeBattlePassRewardReq uint16 = 2627
TakeBattlePassRewardRsp uint16 = 2631
- TakeCityReputationExploreRewardReq uint16 = 2897
- TakeCityReputationExploreRewardRsp uint16 = 2881
- TakeCityReputationLevelRewardReq uint16 = 2812
- TakeCityReputationLevelRewardRsp uint16 = 2835
- TakeCityReputationParentQuestReq uint16 = 2821
- TakeCityReputationParentQuestRsp uint16 = 2803
- TakeCompoundOutputReq uint16 = 174
- TakeCompoundOutputRsp uint16 = 176
- TakeCoopRewardReq uint16 = 1973
- TakeCoopRewardRsp uint16 = 1985
- TakeDeliveryDailyRewardReq uint16 = 2121
- TakeDeliveryDailyRewardRsp uint16 = 2162
- TakeEffigyFirstPassRewardReq uint16 = 2196
- TakeEffigyFirstPassRewardRsp uint16 = 2061
- TakeEffigyRewardReq uint16 = 2040
- TakeEffigyRewardRsp uint16 = 2007
- TakeFirstShareRewardReq uint16 = 4074
- TakeFirstShareRewardRsp uint16 = 4076
- TakeFurnitureMakeReq uint16 = 4772
- TakeFurnitureMakeRsp uint16 = 4769
- TakeHuntingOfferReq uint16 = 4326
- TakeHuntingOfferRsp uint16 = 4318
- TakeInvestigationRewardReq uint16 = 1912
- TakeInvestigationRewardRsp uint16 = 1922
- TakeInvestigationTargetRewardReq uint16 = 1918
- TakeInvestigationTargetRewardRsp uint16 = 1916
- TakeMaterialDeleteReturnReq uint16 = 629
- TakeMaterialDeleteReturnRsp uint16 = 657
- TakeOfferingLevelRewardReq uint16 = 2919
- TakeOfferingLevelRewardRsp uint16 = 2911
- TakePlayerLevelRewardReq uint16 = 129
- TakePlayerLevelRewardRsp uint16 = 157
- TakeRegionSearchRewardReq uint16 = 5625
- TakeRegionSearchRewardRsp uint16 = 5607
- TakeResinCardDailyRewardReq uint16 = 4122
- TakeResinCardDailyRewardRsp uint16 = 4144
- TakeReunionFirstGiftRewardReq uint16 = 5075
- TakeReunionFirstGiftRewardRsp uint16 = 5057
- TakeReunionMissionRewardReq uint16 = 5092
- TakeReunionMissionRewardRsp uint16 = 5064
- TakeReunionSignInRewardReq uint16 = 5079
- TakeReunionSignInRewardRsp uint16 = 5072
- TakeReunionWatcherRewardReq uint16 = 5070
- TakeReunionWatcherRewardRsp uint16 = 5095
- TakeoffEquipReq uint16 = 605
- TakeoffEquipRsp uint16 = 682
- TanukiTravelFinishGuideQuestNotify uint16 = 8924
- TaskVarNotify uint16 = 160
- TeamResonanceChangeNotify uint16 = 1082
- ToTheMoonAddObstacleReq uint16 = 6121
- ToTheMoonAddObstacleRsp uint16 = 6103
- ToTheMoonEnterSceneReq uint16 = 6135
- ToTheMoonEnterSceneRsp uint16 = 6107
- ToTheMoonObstaclesModifyNotify uint16 = 6199
- ToTheMoonPingNotify uint16 = 6112
- ToTheMoonQueryPathReq uint16 = 6172
- ToTheMoonQueryPathRsp uint16 = 6198
- ToTheMoonRemoveObstacleReq uint16 = 6190
- ToTheMoonRemoveObstacleRsp uint16 = 6173
- TowerAllDataReq uint16 = 2490
- TowerAllDataRsp uint16 = 2473
- TowerBriefDataNotify uint16 = 2472
+ TakeCityReputationExploreRewardReq uint16 = 2899
+ TakeCityReputationExploreRewardRsp uint16 = 2825
+ TakeCityReputationLevelRewardReq uint16 = 2856
+ TakeCityReputationLevelRewardRsp uint16 = 2819
+ TakeCityReputationParentQuestReq uint16 = 2843
+ TakeCityReputationParentQuestRsp uint16 = 2861
+ TakeCompoundOutputReq uint16 = 134
+ TakeCompoundOutputRsp uint16 = 195
+ TakeCoopRewardReq uint16 = 1980
+ TakeCoopRewardRsp uint16 = 1971
+ TakeDeliveryDailyRewardReq uint16 = 2075
+ TakeDeliveryDailyRewardRsp uint16 = 2174
+ TakeEffigyFirstPassRewardReq uint16 = 2138
+ TakeEffigyFirstPassRewardRsp uint16 = 2178
+ TakeEffigyRewardReq uint16 = 2082
+ TakeEffigyRewardRsp uint16 = 2099
+ TakeFirstShareRewardReq uint16 = 4034
+ TakeFirstShareRewardRsp uint16 = 4095
+ TakeFurnitureMakeReq uint16 = 4506
+ TakeFurnitureMakeRsp uint16 = 4803
+ TakeHuntingOfferReq uint16 = 4342
+ TakeHuntingOfferRsp uint16 = 4341
+ TakeInvestigationRewardReq uint16 = 1924
+ TakeInvestigationRewardRsp uint16 = 1907
+ TakeInvestigationTargetRewardReq uint16 = 1903
+ TakeInvestigationTargetRewardRsp uint16 = 1905
+ TakeMaterialDeleteReturnReq uint16 = 620
+ TakeMaterialDeleteReturnRsp uint16 = 663
+ TakeoffEquipReq uint16 = 642
+ TakeoffEquipRsp uint16 = 690
+ TakeOfferingLevelRewardReq uint16 = 2901
+ TakeOfferingLevelRewardRsp uint16 = 2902
+ TakePlayerLevelRewardReq uint16 = 120
+ TakePlayerLevelRewardRsp uint16 = 163
+ TakeRegionSearchRewardReq uint16 = 5622
+ TakeRegionSearchRewardRsp uint16 = 5635
+ TakeResinCardDailyRewardReq uint16 = 4117
+ TakeResinCardDailyRewardRsp uint16 = 4112
+ TakeReunionFirstGiftRewardReq uint16 = 5072
+ TakeReunionFirstGiftRewardRsp uint16 = 5085
+ TakeReunionMissionRewardReq uint16 = 5095
+ TakeReunionMissionRewardRsp uint16 = 5052
+ TakeReunionSignInRewardReq uint16 = 5094
+ TakeReunionSignInRewardRsp uint16 = 5067
+ TakeReunionWatcherRewardReq uint16 = 5065
+ TakeReunionWatcherRewardRsp uint16 = 5068
+ TanukiTravelFinishGuideQuestNotify uint16 = 8481
+ TaskVarNotify uint16 = 136
+ TeamResonanceChangeNotify uint16 = 1090
+ ToTheMoonAddObstacleReq uint16 = 6143
+ ToTheMoonAddObstacleRsp uint16 = 6161
+ ToTheMoonEnterSceneReq uint16 = 6119
+ ToTheMoonEnterSceneRsp uint16 = 6200
+ ToTheMoonObstaclesModifyNotify uint16 = 6157
+ ToTheMoonPingNotify uint16 = 6156
+ ToTheMoonQueryPathReq uint16 = 6179
+ ToTheMoonQueryPathRsp uint16 = 6130
+ ToTheMoonRemoveObstacleReq uint16 = 6147
+ ToTheMoonRemoveObstacleRsp uint16 = 6178
+ TowerAllDataReq uint16 = 2447
+ TowerAllDataRsp uint16 = 2478
+ TowerBriefDataNotify uint16 = 2479
TowerBuffSelectReq uint16 = 2448
- TowerBuffSelectRsp uint16 = 2497
- TowerCurLevelRecordChangeNotify uint16 = 2412
- TowerDailyRewardProgressChangeNotify uint16 = 2435
- TowerEnterLevelReq uint16 = 2431
- TowerEnterLevelRsp uint16 = 2475
- TowerFloorRecordChangeNotify uint16 = 2498
- TowerGetFloorStarRewardReq uint16 = 2404
- TowerGetFloorStarRewardRsp uint16 = 2493
- TowerLevelEndNotify uint16 = 2495
- TowerLevelStarCondNotify uint16 = 2406
- TowerMiddleLevelChangeTeamNotify uint16 = 2434
- TowerRecordHandbookReq uint16 = 2450
- TowerRecordHandbookRsp uint16 = 2443
- TowerSurrenderReq uint16 = 2422
- TowerSurrenderRsp uint16 = 2465
- TowerTeamSelectReq uint16 = 2421
- TowerTeamSelectRsp uint16 = 2403
- TreasureMapBonusChallengeNotify uint16 = 2115
- TreasureMapCurrencyNotify uint16 = 2171
- TreasureMapDetectorDataNotify uint16 = 4300
- TreasureMapGuideTaskDoneNotify uint16 = 2119
- TreasureMapHostInfoNotify uint16 = 8681
- TreasureMapMpChallengeNotify uint16 = 2048
- TreasureMapPreTaskDoneNotify uint16 = 2152
- TreasureMapRegionActiveNotify uint16 = 2122
- TreasureMapRegionInfoNotify uint16 = 2185
- TreasureSeelieCollectOrbsNotify uint16 = 20754
- TrialAvatarFirstPassDungeonNotify uint16 = 2013
- TrialAvatarInDungeonIndexNotify uint16 = 2186
- TriggerCreateGadgetToEquipPartNotify uint16 = 350
- TriggerRoguelikeCurseNotify uint16 = 8412
- TriggerRoguelikeRuneReq uint16 = 8463
- TriggerRoguelikeRuneRsp uint16 = 8065
- TryCustomDungeonReq uint16 = 6245
- TryCustomDungeonRsp uint16 = 6241
- TryEnterHomeReq uint16 = 4482
- TryEnterHomeRsp uint16 = 4653
- TryEnterNextRogueDiaryDungeonReq uint16 = 8280
- TryEnterNextRogueDiaryDungeonRsp uint16 = 8362
- TryInterruptRogueDiaryDungeonReq uint16 = 8617
- TryInterruptRogueDiaryDungeonRsp uint16 = 8903
- UgcNotify uint16 = 6341
- UnfreezeGroupLimitNotify uint16 = 3220
- UnionCmdNotify uint16 = 5
- UnlockAvatarTalentReq uint16 = 1072
- UnlockAvatarTalentRsp uint16 = 1098
- UnlockCoopChapterReq uint16 = 1970
- UnlockCoopChapterRsp uint16 = 1995
- UnlockNameCardNotify uint16 = 4006
- UnlockPersonalLineReq uint16 = 449
- UnlockPersonalLineRsp uint16 = 491
- UnlockTransPointReq uint16 = 3035
- UnlockTransPointRsp uint16 = 3426
- UnlockedFurnitureFormulaDataNotify uint16 = 4846
- UnlockedFurnitureSuiteDataNotify uint16 = 4454
- UnmarkEntityInMinMapNotify uint16 = 219
- UpdateAbilityCreatedMovingPlatformNotify uint16 = 881
- UpdatePS4BlockListReq uint16 = 4046
- UpdatePS4BlockListRsp uint16 = 4041
- UpdatePS4FriendListNotify uint16 = 4039
- UpdatePS4FriendListReq uint16 = 4089
- UpdatePS4FriendListRsp uint16 = 4059
- UpdatePlayerShowAvatarListReq uint16 = 4067
- UpdatePlayerShowAvatarListRsp uint16 = 4058
- UpdatePlayerShowNameCardListReq uint16 = 4002
- UpdatePlayerShowNameCardListRsp uint16 = 4019
- UpdateRedPointNotify uint16 = 93
- UpdateReunionWatcherNotify uint16 = 5091
- UpdateSalvageBundleMarkReq uint16 = 8967
- UpdateSalvageBundleMarkRsp uint16 = 8459
- UpgradeRoguelikeShikigamiReq uint16 = 8151
- UpgradeRoguelikeShikigamiRsp uint16 = 8966
- UseItemReq uint16 = 690
- UseItemRsp uint16 = 673
- UseMiracleRingReq uint16 = 5226
- UseMiracleRingRsp uint16 = 5218
- UseWidgetCreateGadgetReq uint16 = 4293
- UseWidgetCreateGadgetRsp uint16 = 4290
- UseWidgetRetractGadgetReq uint16 = 4286
- UseWidgetRetractGadgetRsp uint16 = 4261
- VehicleInteractReq uint16 = 865
- VehicleInteractRsp uint16 = 804
- VehicleStaminaNotify uint16 = 834
- ViewCodexReq uint16 = 4202
- ViewCodexRsp uint16 = 4201
- ViewLanternProjectionLevelTipsReq uint16 = 8758
- ViewLanternProjectionLevelTipsRsp uint16 = 8411
- ViewLanternProjectionTipsReq uint16 = 8218
- ViewLanternProjectionTipsRsp uint16 = 8590
- VintageCampGroupBundleRegisterNotify uint16 = 24244
- VintageCampStageFinishNotify uint16 = 22830
- VintageDecorateBoothReq uint16 = 20846
- VintageDecorateBoothRsp uint16 = 20993
- VintageHuntingStartGalleryReq uint16 = 21780
- VintageHuntingStartGalleryRsp uint16 = 21951
- VintageMarketDeliverItemReq uint16 = 23141
- VintageMarketDeliverItemRsp uint16 = 22181
- VintageMarketDividendFinishNotify uint16 = 23147
- VintageMarketFinishStorePlayReq uint16 = 20676
- VintageMarketFinishStorePlayRsp uint16 = 23462
- VintageMarketNpcEventFinishNotify uint16 = 24201
- VintageMarketStartStorePlayReq uint16 = 22864
- VintageMarketStartStorePlayRsp uint16 = 22130
- VintageMarketStoreChooseStrategyReq uint16 = 21248
- VintageMarketStoreChooseStrategyRsp uint16 = 24860
- VintageMarketStoreUnlockSlotReq uint16 = 20626
- VintageMarketStoreUnlockSlotRsp uint16 = 20733
- VintageMarketStoreViewStrategyReq uint16 = 21700
- VintageMarketStoreViewStrategyRsp uint16 = 21814
- VintagePresentFinishNoify uint16 = 24142
- VintagePresentFinishNotify uint16 = 20086
- WatcherAllDataNotify uint16 = 2272
- WatcherChangeNotify uint16 = 2298
- WatcherEventNotify uint16 = 2212
- WatcherEventStageNotify uint16 = 2207
- WatcherEventTypeNotify uint16 = 2235
- WaterSpritePhaseFinishNotify uint16 = 2025
- WeaponAwakenReq uint16 = 695
- WeaponAwakenRsp uint16 = 606
- WeaponPromoteReq uint16 = 622
- WeaponPromoteRsp uint16 = 665
- WeaponUpgradeReq uint16 = 639
- WeaponUpgradeRsp uint16 = 653
- WearEquipReq uint16 = 697
- WearEquipRsp uint16 = 681
- WidgetActiveChangeNotify uint16 = 4280
- WidgetCaptureAnimalReq uint16 = 4256
- WidgetCaptureAnimalRsp uint16 = 4289
- WidgetCoolDownNotify uint16 = 4295
- WidgetDoBagReq uint16 = 4255
- WidgetDoBagRsp uint16 = 4296
- WidgetGadgetAllDataNotify uint16 = 4284
- WidgetGadgetDataNotify uint16 = 4266
- WidgetGadgetDestroyNotify uint16 = 4274
- WidgetQuickHitTreeReq uint16 = 3345
- WidgetQuickHitTreeRsp uint16 = 3336
- WidgetReportReq uint16 = 4291
- WidgetReportRsp uint16 = 4292
- WidgetSlotChangeNotify uint16 = 4267
- WidgetUpdateExtraCDReq uint16 = 5960
- WidgetUpdateExtraCDRsp uint16 = 6056
- WidgetUseAttachAbilityGroupChangeNotify uint16 = 4258
- WindFieldGalleryChallengeInfoNotify uint16 = 5563
- WindFieldGalleryInfoNotify uint16 = 5526
- WindFieldRestartDungeonReq uint16 = 20731
- WindFieldRestartDungeonRsp uint16 = 24712
- WindSeedClientNotify uint16 = 1199
- WinterCampAcceptAllGiveItemReq uint16 = 9000
- WinterCampAcceptAllGiveItemRsp uint16 = 8626
- WinterCampAcceptGiveItemReq uint16 = 8387
- WinterCampAcceptGiveItemRsp uint16 = 8185
- WinterCampEditSnowmanCombinationReq uint16 = 8144
- WinterCampEditSnowmanCombinationRsp uint16 = 8142
- WinterCampGetCanGiveFriendItemReq uint16 = 8964
- WinterCampGetCanGiveFriendItemRsp uint16 = 8357
- WinterCampGetFriendWishListReq uint16 = 8946
- WinterCampGetFriendWishListRsp uint16 = 8937
- WinterCampGetRecvItemListReq uint16 = 8143
- WinterCampGetRecvItemListRsp uint16 = 8423
- WinterCampGiveFriendItemReq uint16 = 8572
- WinterCampGiveFriendItemRsp uint16 = 8264
- WinterCampRaceScoreNotify uint16 = 8149
- WinterCampRecvItemNotify uint16 = 8580
- WinterCampSetWishListReq uint16 = 8753
- WinterCampSetWishListRsp uint16 = 8281
- WinterCampStageInfoChangeNotify uint16 = 8154
- WinterCampTakeBattleRewardReq uint16 = 8401
- WinterCampTakeBattleRewardRsp uint16 = 8153
- WinterCampTakeExploreRewardReq uint16 = 8607
- WinterCampTakeExploreRewardRsp uint16 = 8978
- WinterCampTriathlonRestartReq uint16 = 8844
- WinterCampTriathlonRestartRsp uint16 = 8569
- WinterCampTriathlonSettleNotify uint16 = 8342
- WorktopOptionNotify uint16 = 835
- WorldAllRoutineTypeNotify uint16 = 3518
- WorldChestOpenNotify uint16 = 3295
- WorldDataNotify uint16 = 3308
- WorldOwnerBlossomBriefInfoNotify uint16 = 2735
- WorldOwnerBlossomScheduleInfoNotify uint16 = 2707
- WorldOwnerDailyTaskNotify uint16 = 102
- WorldPlayerDieNotify uint16 = 285
- WorldPlayerInfoNotify uint16 = 3116
- WorldPlayerLocationNotify uint16 = 258
- WorldPlayerRTTNotify uint16 = 22
- WorldPlayerReviveReq uint16 = 225
- WorldPlayerReviveRsp uint16 = 278
- WorldRoutineChangeNotify uint16 = 3507
- WorldRoutineTypeCloseNotify uint16 = 3502
- WorldRoutineTypeRefreshNotify uint16 = 3525
+ TowerBuffSelectRsp uint16 = 2499
+ TowerCurLevelRecordChangeNotify uint16 = 2456
+ TowerDailyRewardProgressChangeNotify uint16 = 2419
+ TowerEnterLevelReq uint16 = 2427
+ TowerEnterLevelRsp uint16 = 2439
+ TowerFloorRecordChangeNotify uint16 = 2430
+ TowerGetFloorStarRewardReq uint16 = 2444
+ TowerGetFloorStarRewardRsp uint16 = 2407
+ TowerLevelEndNotify uint16 = 2433
+ TowerLevelStarCondNotify uint16 = 2410
+ TowerMiddleLevelChangeTeamNotify uint16 = 2480
+ TowerRecordHandbookReq uint16 = 2446
+ TowerRecordHandbookRsp uint16 = 2475
+ TowerSurrenderReq uint16 = 2437
+ TowerSurrenderRsp uint16 = 2489
+ TowerTeamSelectReq uint16 = 2443
+ TowerTeamSelectRsp uint16 = 2461
+ TreasureMapBonusChallengeNotify uint16 = 2097
+ TreasureMapCurrencyNotify uint16 = 2032
+ TreasureMapDetectorDataNotify uint16 = 4254
+ TreasureMapGuideTaskDoneNotify uint16 = 2046
+ TreasureMapHostInfoNotify uint16 = 8296
+ TreasureMapMpChallengeNotify uint16 = 2021
+ TreasureMapPreTaskDoneNotify uint16 = 2177
+ TreasureMapRegionActiveNotify uint16 = 2085
+ TreasureMapRegionInfoNotify uint16 = 2179
+ TreasureSeelieCollectOrbsNotify uint16 = 20380
+ TrialAvatarFirstPassDungeonNotify uint16 = 2134
+ TrialAvatarInDungeonIndexNotify uint16 = 2063
+ TriggerCreateGadgetToEquipPartNotify uint16 = 346
+ TriggerRoguelikeCurseNotify uint16 = 8965
+ TriggerRoguelikeRuneReq uint16 = 8822
+ TriggerRoguelikeRuneRsp uint16 = 8133
+ TryCustomDungeonReq uint16 = 6218
+ TryCustomDungeonRsp uint16 = 6208
+ TryEnterHomeReq uint16 = 4648
+ TryEnterHomeRsp uint16 = 4796
+ TryEnterNextRogueDiaryDungeonReq uint16 = 8791
+ TryEnterNextRogueDiaryDungeonRsp uint16 = 8487
+ TryInterruptRogueDiaryDungeonReq uint16 = 8438
+ TryInterruptRogueDiaryDungeonRsp uint16 = 8234
+ UgcNotify uint16 = 6308
+ UnfreezeGroupLimitNotify uint16 = 3483
+ UnionCmdNotify uint16 = 42
+ Unk3300_DGBNCDEIIFC uint16 = 952
+ Unk3300_DMOBAABGOBF uint16 = 7193
+ Unk3300_ICAGMOCOALO uint16 = 4187
+ Unk3300_LOINGBJLJEM uint16 = 7048
+ UnlockAvatarTalentReq uint16 = 1079
+ UnlockAvatarTalentRsp uint16 = 1030
+ UnlockCoopChapterReq uint16 = 1965
+ UnlockCoopChapterRsp uint16 = 1968
+ UnlockedFurnitureFormulaDataNotify uint16 = 4716
+ UnlockedFurnitureSuiteDataNotify uint16 = 4532
+ UnlockNameCardNotify uint16 = 4010
+ UnlockPersonalLineReq uint16 = 415
+ UnlockPersonalLineRsp uint16 = 421
+ UnlockTransPointReq uint16 = 3200
+ UnlockTransPointRsp uint16 = 3046
+ UnmarkEntityInMinMapNotify uint16 = 254
+ UpdateAbilityCreatedMovingPlatformNotify uint16 = 825
+ UpdatePlayerShowAvatarListReq uint16 = 4053
+ UpdatePlayerShowAvatarListRsp uint16 = 4024
+ UpdatePlayerShowNameCardListReq uint16 = 4093
+ UpdatePlayerShowNameCardListRsp uint16 = 4054
+ UpdatePS4BlockListReq uint16 = 4064
+ UpdatePS4BlockListRsp uint16 = 4067
+ UpdatePS4FriendListNotify uint16 = 4016
+ UpdatePS4FriendListReq uint16 = 4026
+ UpdatePS4FriendListRsp uint16 = 4077
+ UpdateRedPointNotify uint16 = 7
+ UpdateReunionWatcherNotify uint16 = 5058
+ UpdateSalvageBundleMarkReq uint16 = 8906
+ UpdateSalvageBundleMarkRsp uint16 = 8620
+ UpgradeRoguelikeShikigamiReq uint16 = 8282
+ UpgradeRoguelikeShikigamiRsp uint16 = 8314
+ UseItemReq uint16 = 647
+ UseItemRsp uint16 = 678
+ UseMiracleRingReq uint16 = 5242
+ UseMiracleRingRsp uint16 = 5241
+ UseWidgetCreateGadgetReq uint16 = 4264
+ UseWidgetCreateGadgetRsp uint16 = 4298
+ UseWidgetRetractGadgetReq uint16 = 4275
+ UseWidgetRetractGadgetRsp uint16 = 4263
+ VehicleInteractReq uint16 = 889
+ VehicleInteractRsp uint16 = 844
+ VehicleStaminaNotify uint16 = 880
+ ViewCodexReq uint16 = 4206
+ ViewCodexRsp uint16 = 4210
+ ViewLanternProjectionLevelTipsReq uint16 = 8303
+ ViewLanternProjectionLevelTipsRsp uint16 = 8962
+ ViewLanternProjectionTipsReq uint16 = 8560
+ ViewLanternProjectionTipsRsp uint16 = 8623
+ VintageCampGroupBundleRegisterNotify uint16 = 24329
+ VintageCampStageFinishNotify uint16 = 21839
+ VintageDecorateBoothReq uint16 = 22958
+ VintageDecorateBoothRsp uint16 = 21588
+ VintageHuntingStartGalleryReq uint16 = 21649
+ VintageHuntingStartGalleryRsp uint16 = 22068
+ VintageMarketDeliverItemReq uint16 = 21131
+ VintageMarketDeliverItemRsp uint16 = 23763
+ VintageMarketDividendFinishNotify uint16 = 22064
+ VintageMarketFinishStorePlayReq uint16 = 21911
+ VintageMarketFinishStorePlayRsp uint16 = 20941
+ VintageMarketNpcEventFinishNotify uint16 = 24781
+ VintageMarketStartStorePlayReq uint16 = 22447
+ VintageMarketStartStorePlayRsp uint16 = 23017
+ VintageMarketStoreChooseStrategyReq uint16 = 21624
+ VintageMarketStoreChooseStrategyRsp uint16 = 21298
+ VintageMarketStoreUnlockSlotReq uint16 = 22367
+ VintageMarketStoreUnlockSlotRsp uint16 = 23327
+ VintageMarketStoreViewStrategyReq uint16 = 21834
+ VintageMarketStoreViewStrategyRsp uint16 = 22881
+ VintagePresentFinishNoify uint16 = 21400
+ VintagePresentFinishNotify uint16 = 20454
+ WatcherAllDataNotify uint16 = 2279
+ WatcherChangeNotify uint16 = 2230
+ WatcherEventNotify uint16 = 2256
+ WatcherEventStageNotify uint16 = 2300
+ WatcherEventTypeNotify uint16 = 2219
+ WaterSpritePhaseFinishNotify uint16 = 2120
+ WeaponAwakenReq uint16 = 633
+ WeaponAwakenRsp uint16 = 610
+ WeaponPromoteReq uint16 = 637
+ WeaponPromoteRsp uint16 = 689
+ WeaponUpgradeReq uint16 = 616
+ WeaponUpgradeRsp uint16 = 673
+ WearEquipReq uint16 = 699
+ WearEquipRsp uint16 = 625
+ WidgetActiveChangeNotify uint16 = 4297
+ WidgetCaptureAnimalReq uint16 = 4279
+ WidgetCaptureAnimalRsp uint16 = 4296
+ WidgetCoolDownNotify uint16 = 4268
+ WidgetDoBagReq uint16 = 4269
+ WidgetDoBagRsp uint16 = 4299
+ WidgetGadgetAllDataNotify uint16 = 4288
+ WidgetGadgetDataNotify uint16 = 4276
+ WidgetGadgetDestroyNotify uint16 = 4257
+ WidgetQuickHitTreeReq uint16 = 3068
+ WidgetQuickHitTreeRsp uint16 = 3250
+ WidgetReportReq uint16 = 4258
+ WidgetReportRsp uint16 = 4295
+ WidgetSlotChangeNotify uint16 = 4278
+ WidgetUpdateExtraCDReq uint16 = 5907
+ WidgetUpdateExtraCDRsp uint16 = 6076
+ WidgetUseAttachAbilityGroupChangeNotify uint16 = 4290
+ WidgetWeatherWizardDataNotify uint16 = 5952
+ WindFieldGalleryChallengeInfoNotify uint16 = 5503
+ WindFieldGalleryInfoNotify uint16 = 5572
+ WindFieldRestartDungeonReq uint16 = 24309
+ WindFieldRestartDungeonRsp uint16 = 20706
+ WindSeedClientNotify uint16 = 1157
+ WinterCampAcceptAllGiveItemReq uint16 = 8538
+ WinterCampAcceptAllGiveItemRsp uint16 = 8731
+ WinterCampAcceptGiveItemReq uint16 = 8516
+ WinterCampAcceptGiveItemRsp uint16 = 8966
+ WinterCampEditSnowmanCombinationReq uint16 = 8157
+ WinterCampEditSnowmanCombinationRsp uint16 = 8951
+ WinterCampGetCanGiveFriendItemReq uint16 = 8443
+ WinterCampGetCanGiveFriendItemRsp uint16 = 8021
+ WinterCampGetFriendWishListReq uint16 = 8764
+ WinterCampGetFriendWishListRsp uint16 = 8208
+ WinterCampGetRecvItemListReq uint16 = 8794
+ WinterCampGetRecvItemListRsp uint16 = 8957
+ WinterCampGiveFriendItemReq uint16 = 8102
+ WinterCampGiveFriendItemRsp uint16 = 8735
+ WinterCampRaceScoreNotify uint16 = 8960
+ WinterCampRecvItemNotify uint16 = 8952
+ WinterCampSetWishListReq uint16 = 8380
+ WinterCampSetWishListRsp uint16 = 8288
+ WinterCampStageInfoChangeNotify uint16 = 8878
+ WinterCampTakeBattleRewardReq uint16 = 8484
+ WinterCampTakeBattleRewardRsp uint16 = 8310
+ WinterCampTakeExploreRewardReq uint16 = 8014
+ WinterCampTakeExploreRewardRsp uint16 = 8323
+ WinterCampTriathlonRestartReq uint16 = 8524
+ WinterCampTriathlonRestartRsp uint16 = 8468
+ WinterCampTriathlonSettleNotify uint16 = 8194
+ WorktopOptionNotify uint16 = 819
+ WorldAllRoutineTypeNotify uint16 = 3541
+ WorldChestOpenNotify uint16 = 3242
+ WorldDataNotify uint16 = 3436
+ WorldOwnerBlossomBriefInfoNotify uint16 = 2719
+ WorldOwnerBlossomScheduleInfoNotify uint16 = 2800
+ WorldOwnerDailyTaskNotify uint16 = 193
+ WorldPlayerDieNotify uint16 = 259
+ WorldPlayerInfoNotify uint16 = 3150
+ WorldPlayerLocationNotify uint16 = 224
+ WorldPlayerReviveReq uint16 = 229
+ WorldPlayerReviveRsp uint16 = 286
+ WorldPlayerRTTNotify uint16 = 37
+ WorldRoutineChangeNotify uint16 = 3535
+ WorldRoutineTypeCloseNotify uint16 = 3527
+ WorldRoutineTypeRefreshNotify uint16 = 3522
)
diff --git a/protocol/cmd/cmd_id_proto_obj_map.go b/protocol/cmd/cmd_id_proto_obj_map.go
index 8237b792..9f1963d2 100644
--- a/protocol/cmd/cmd_id_proto_obj_map.go
+++ b/protocol/cmd/cmd_id_proto_obj_map.go
@@ -248,6 +248,29 @@ func (c *CmdProtoMap) registerAllMessage() {
c.registerMessage(VehicleInteractRsp, &proto.VehicleInteractRsp{}) // 载具交互响应
c.registerMessage(VehicleStaminaNotify, &proto.VehicleStaminaNotify{}) // 载具耐力消耗通知
+ // 七圣召唤
+ c.registerMessage(GCGBasicDataNotify, &proto.GCGBasicDataNotify{}) // GCG基本数据通知
+ c.registerMessage(GCGLevelChallengeNotify, &proto.GCGLevelChallengeNotify{}) // GCG等级挑战通知
+ c.registerMessage(GCGDSBanCardNotify, &proto.GCGDSBanCardNotify{}) // GCG禁止的卡牌通知
+ c.registerMessage(GCGDSDataNotify, &proto.GCGDSDataNotify{}) // GCG数据通知 (解锁的内容)
+ c.registerMessage(GCGTCTavernChallengeDataNotify, &proto.GCGTCTavernChallengeDataNotify{}) // GCG酒馆挑战数据通知
+ c.registerMessage(GCGTCTavernInfoNotify, &proto.GCGTCTavernInfoNotify{}) // GCG酒馆信息通知
+ c.registerMessage(GCGTavernNpcInfoNotify, &proto.GCGTavernNpcInfoNotify{}) // GCG酒馆NPC信息通知
+ c.registerMessage(GCGGameBriefDataNotify, &proto.GCGGameBriefDataNotify{}) // GCG游戏简要数据通知
+ c.registerMessage(GCGAskDuelReq, &proto.GCGAskDuelReq{}) // GCG决斗请求
+ c.registerMessage(GCGAskDuelRsp, &proto.GCGAskDuelRsp{}) // GCG决斗响应
+ c.registerMessage(GCGInitFinishReq, &proto.GCGInitFinishReq{}) // GCG初始化完成请求
+ c.registerMessage(GCGInitFinishRsp, &proto.GCGInitFinishRsp{}) // GCG初始化完成响应
+ c.registerMessage(Unk3300_DGBNCDEIIFC, &proto.Unk3300_DGBNCDEIIFC{}) // GCG
+ c.registerMessage(DungeonWayPointNotify, &proto.DungeonWayPointNotify{}) // GCG
+ c.registerMessage(DungeonDataNotify, &proto.DungeonDataNotify{}) // GCG
+
+ //// TODO 客户端开始GCG游戏
+ //c.registerMessage(GCGStartChallengeByCheckRewardReq, &proto.GCGStartChallengeByCheckRewardReq{}) // GCG开始挑战来自检测奖励请求
+ //c.registerMessage(GCGStartChallengeByCheckRewardRsp, &proto.GCGStartChallengeByCheckRewardRsp{}) // GCG开始挑战来自检测奖励响应
+ //c.registerMessage(GCGStartChallengeReq, &proto.GCGStartChallengeReq{}) // GCG开始挑战请求
+ //c.registerMessage(GCGStartChallengeRsp, &proto.GCGStartChallengeRsp{}) // GCG开始挑战响应
+
// 乱七八糟
c.registerMessage(MarkMapReq, &proto.MarkMapReq{}) // 标记地图请求
c.registerMessage(TowerAllDataReq, &proto.TowerAllDataReq{}) // 深渊数据请求
diff --git a/protocol/proto/GCGActionType.proto b/protocol/proto/GCGActionType.proto
new file mode 100644
index 00000000..07422837
--- /dev/null
+++ b/protocol/proto/GCGActionType.proto
@@ -0,0 +1,48 @@
+// 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 go_package = "./;proto";
+
+enum GCGActionType {
+ GCG_ACTION_TYPE_NONE = 0;
+ GCG_ACTION_TYPE_SPECIAL_PHASE = 1;
+ GCG_ACTION_TYPE_NEXT_PHASE = 2;
+ GCG_ACTION_TYPE_DRAW = 3;
+ GCG_ACTION_TYPE_REDRAW = 4;
+ GCG_ACTION_TYPE_SELECT_ONSTAGE = 5;
+ GCG_ACTION_TYPE_ROLL = 6;
+ GCG_ACTION_TYPE_REROLL = 7;
+ GCG_ACTION_TYPE_ATTACK = 8;
+ GCG_ACTION_TYPE_PLAY_CARD = 9;
+ GCG_ACTION_TYPE_PASS = 10;
+ GCG_ACTION_TYPE_REBOOT = 11;
+ GCG_ACTION_TYPE_GAME_OVER = 12;
+ GCG_ACTION_TYPE_TRIGGER = 13;
+ GCG_ACTION_TYPE_PHASE_EXIT = 14;
+ GCG_ACTION_TYPE_CUSTOM = 15;
+ GCG_ACTION_TYPE_NOTIFY_COST = 16;
+ GCG_ACTION_TYPE_AFTER_OPERATION = 17;
+ GCG_ACTION_TYPE_USE_SKILL = 18;
+ GCG_ACTION_TYPE_NOTIFY_SKILL_PREVIEW = 19;
+ GCG_ACTION_TYPE_PREVIEW_ATTACK = 20;
+ GCG_ACTION_TYPE_PREVIEW_AFTER_ATTACK = 21;
+ GCG_ACTION_TYPE_SEND_MESSAGE = 22;
+ GCG_ACTION_TYPE_WAITING_CHARACTER = 23;
+ GCG_ACTION_TYPE_TRIGGER_SKILL = 24;
+ GCG_ACTION_TYPE_BEFORE_NEXT_OPERATION = 25;
+}
diff --git a/protocol/proto/GCGApplyInviteBattleNotify.proto b/protocol/proto/GCGApplyInviteBattleNotify.proto
index 88c2923b..5183a95e 100644
--- a/protocol/proto/GCGApplyInviteBattleNotify.proto
+++ b/protocol/proto/GCGApplyInviteBattleNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7820
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGApplyInviteBattleNotify {
- bool is_agree = 14;
- int32 retcode = 6;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7984;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ bool is_agree = 4;
+ int32 retcode = 14;
}
diff --git a/protocol/proto/GCGApplyInviteBattleReq.proto b/protocol/proto/GCGApplyInviteBattleReq.proto
index a88a1a02..fcb22c5c 100644
--- a/protocol/proto/GCGApplyInviteBattleReq.proto
+++ b/protocol/proto/GCGApplyInviteBattleReq.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7730
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGApplyInviteBattleReq {
- bool is_agree = 9;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7032;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ bool is_agree = 12;
}
diff --git a/protocol/proto/GCGApplyInviteBattleRsp.proto b/protocol/proto/GCGApplyInviteBattleRsp.proto
index 59db7bcd..984f4653 100644
--- a/protocol/proto/GCGApplyInviteBattleRsp.proto
+++ b/protocol/proto/GCGApplyInviteBattleRsp.proto
@@ -16,12 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7304
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGApplyInviteBattleRsp {
- int32 retcode = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7754;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 punish_end_time = 6;
+ int32 retcode = 8;
}
diff --git a/protocol/proto/GCGAskDuelReq.proto b/protocol/proto/GCGAskDuelReq.proto
index 70f520c4..6e8beb61 100644
--- a/protocol/proto/GCGAskDuelReq.proto
+++ b/protocol/proto/GCGAskDuelReq.proto
@@ -16,11 +16,15 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7237
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
-message GCGAskDuelReq {}
+message GCGAskDuelReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7034;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+}
diff --git a/protocol/proto/GCGAskDuelRsp.proto b/protocol/proto/GCGAskDuelRsp.proto
index e95ca9e0..70395eb4 100644
--- a/protocol/proto/GCGAskDuelRsp.proto
+++ b/protocol/proto/GCGAskDuelRsp.proto
@@ -18,13 +18,17 @@ syntax = "proto3";
import "GCGDuel.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7869
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGAskDuelRsp {
- int32 retcode = 3;
- GCGDuel duel = 13;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7564;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ GCGDuel duel = 9;
+ int32 retcode = 2;
}
diff --git a/protocol/proto/GCGAttackCostInfo.proto b/protocol/proto/GCGAttackCostInfo.proto
index fefe57da..f14df01b 100644
--- a/protocol/proto/GCGAttackCostInfo.proto
+++ b/protocol/proto/GCGAttackCostInfo.proto
@@ -16,10 +16,11 @@
syntax = "proto3";
-package proto;
+import "Uint32Pair.proto";
+
option go_package = "./;proto";
message GCGAttackCostInfo {
- uint32 skill_id = 8;
- map cost_map = 3;
+ repeated Uint32Pair cost_map = 1;
+ uint32 skill_id = 7;
}
diff --git a/protocol/proto/GCGBackToDuelReq.proto b/protocol/proto/GCGBackToDuelReq.proto
new file mode 100644
index 00000000..403448a8
--- /dev/null
+++ b/protocol/proto/GCGBackToDuelReq.proto
@@ -0,0 +1,32 @@
+// 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 go_package = "./;proto";
+
+message GCGBackToDuelReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7015;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ bool is_back = 10;
+}
diff --git a/protocol/proto/GCGBackToDuelRsp.proto b/protocol/proto/GCGBackToDuelRsp.proto
new file mode 100644
index 00000000..8125811e
--- /dev/null
+++ b/protocol/proto/GCGBackToDuelRsp.proto
@@ -0,0 +1,31 @@
+// 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 go_package = "./;proto";
+
+message GCGBackToDuelRsp {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7039;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 14;
+}
diff --git a/protocol/proto/GCGBasicDataNotify.proto b/protocol/proto/GCGBasicDataNotify.proto
index 17899bc3..5195d08a 100644
--- a/protocol/proto/GCGBasicDataNotify.proto
+++ b/protocol/proto/GCGBasicDataNotify.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7319
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGBasicDataNotify {
- uint32 level = 9;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7739;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 level = 6;
uint32 exp = 4;
- repeated uint32 level_reward_taken_list = 12;
+ repeated uint32 level_reward_taken_list = 14;
}
diff --git a/protocol/proto/GCGBossChallengeData.proto b/protocol/proto/GCGBossChallengeData.proto
index 95e3152c..3712cc0e 100644
--- a/protocol/proto/GCGBossChallengeData.proto
+++ b/protocol/proto/GCGBossChallengeData.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGBossChallengeData {
- uint32 id = 9;
- repeated uint32 unlock_level_id_list = 14;
+ repeated uint32 unlock_level_id_list = 3;
+ uint32 id = 10;
}
diff --git a/protocol/proto/GCGBossChallengeUpdateNotify.proto b/protocol/proto/GCGBossChallengeUpdateNotify.proto
index fe8254f5..32d44c3d 100644
--- a/protocol/proto/GCGBossChallengeUpdateNotify.proto
+++ b/protocol/proto/GCGBossChallengeUpdateNotify.proto
@@ -18,12 +18,16 @@ syntax = "proto3";
import "GCGBossChallengeData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7073
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGBossChallengeUpdateNotify {
- GCGBossChallengeData boss_challenge = 11;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7852;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ GCGBossChallengeData boss_challenge = 7;
}
diff --git a/protocol/proto/GCGCard.proto b/protocol/proto/GCGCard.proto
index 672a4b31..d58654b9 100644
--- a/protocol/proto/GCGCard.proto
+++ b/protocol/proto/GCGCard.proto
@@ -16,17 +16,19 @@
syntax = "proto3";
+import "GCGSkillLimitsInfo.proto";
import "GCGToken.proto";
-package proto;
option go_package = "./;proto";
message GCGCard {
- uint32 guid = 15;
- repeated GCGToken token_list = 2;
- bool is_show = 14;
- uint32 controller_id = 7;
+ repeated uint32 tag_list = 7;
+ uint32 guid = 11;
+ bool is_show = 15;
+ repeated GCGToken token_list = 8;
+ uint32 face_type = 2;
+ repeated uint32 skill_id_list = 13;
+ repeated GCGSkillLimitsInfo skill_limits_list = 3;
uint32 id = 6;
- repeated uint32 tag_list = 3;
- uint32 face_type = 5;
+ uint32 controller_id = 5;
}
diff --git a/protocol/proto/GCGCardSkillLimitsInfo.proto b/protocol/proto/GCGCardSkillLimitsInfo.proto
new file mode 100644
index 00000000..ee19f0a6
--- /dev/null
+++ b/protocol/proto/GCGCardSkillLimitsInfo.proto
@@ -0,0 +1,25 @@
+// 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 "GCGSkillLimitsInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGCardSkillLimitsInfo {
+ repeated GCGSkillLimitsInfo skill_limits_list = 1;
+}
diff --git a/protocol/proto/GCGChallengeData.proto b/protocol/proto/GCGChallengeData.proto
index ab326949..aaa02c82 100644
--- a/protocol/proto/GCGChallengeData.proto
+++ b/protocol/proto/GCGChallengeData.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGChallengeData {
diff --git a/protocol/proto/GCGChallengeUpdateNotify.proto b/protocol/proto/GCGChallengeUpdateNotify.proto
index 0d5cbe2d..34feb554 100644
--- a/protocol/proto/GCGChallengeUpdateNotify.proto
+++ b/protocol/proto/GCGChallengeUpdateNotify.proto
@@ -18,14 +18,17 @@ syntax = "proto3";
import "GCGDuelChallenge.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7268
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGChallengeUpdateNotify {
- uint32 server_seq = 12;
- GCGDuelChallenge challenge = 13;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7270;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 server_seq = 15;
+ GCGDuelChallenge challenge = 1;
}
diff --git a/protocol/proto/GCGChangeOnstageInfo.proto b/protocol/proto/GCGChangeOnstageInfo.proto
new file mode 100644
index 00000000..573624df
--- /dev/null
+++ b/protocol/proto/GCGChangeOnstageInfo.proto
@@ -0,0 +1,27 @@
+// 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 "GCGSkillPreviewInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGChangeOnstageInfo {
+ bool is_quick = 11;
+ uint32 card_guid = 6;
+ GCGSkillPreviewInfo change_onstage_preview_info = 5;
+}
diff --git a/protocol/proto/GCGClientPerformType.proto b/protocol/proto/GCGClientPerformType.proto
index 30d73f0b..f768196f 100644
--- a/protocol/proto/GCGClientPerformType.proto
+++ b/protocol/proto/GCGClientPerformType.proto
@@ -16,10 +16,11 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGClientPerformType {
GCG_CLIENT_PERFORM_TYPE_INVALID = 0;
GCG_CLIENT_PERFORM_TYPE_CARD_EXCHANGE = 1;
+ GCG_CLIENT_PERFORM_TYPE_FIRST_HAND = 2;
+ GCG_CLIENT_PERFORM_TYPE_REROLL = 3;
}
diff --git a/protocol/proto/GCGClientSettleReq.proto b/protocol/proto/GCGClientSettleReq.proto
index 2e649124..616c4143 100644
--- a/protocol/proto/GCGClientSettleReq.proto
+++ b/protocol/proto/GCGClientSettleReq.proto
@@ -16,11 +16,15 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7506
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
-message GCGClientSettleReq {}
+message GCGClientSettleReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7035;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+}
diff --git a/protocol/proto/GCGClientSettleRsp.proto b/protocol/proto/GCGClientSettleRsp.proto
index bf6a4993..35d980d2 100644
--- a/protocol/proto/GCGClientSettleRsp.proto
+++ b/protocol/proto/GCGClientSettleRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7105
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGClientSettleRsp {
- uint32 close_time = 4;
- int32 retcode = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7532;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 close_time = 5;
+ int32 retcode = 9;
}
diff --git a/protocol/proto/GCGControllerShowInfo.proto b/protocol/proto/GCGControllerShowInfo.proto
index 18fbf1c7..ac99fab3 100644
--- a/protocol/proto/GCGControllerShowInfo.proto
+++ b/protocol/proto/GCGControllerShowInfo.proto
@@ -18,11 +18,12 @@ syntax = "proto3";
import "ProfilePicture.proto";
-package proto;
option go_package = "./;proto";
message GCGControllerShowInfo {
- ProfilePicture profile_picture = 11;
- string nick_name = 14;
- uint32 controller_id = 9;
+ string psn_id = 12;
+ string nick_name = 10;
+ string online_id = 15;
+ ProfilePicture profile_picture = 3;
+ uint32 controller_id = 11;
}
diff --git a/protocol/proto/GCGCostReviseInfo.proto b/protocol/proto/GCGCostReviseInfo.proto
index f7267d61..4356ed7d 100644
--- a/protocol/proto/GCGCostReviseInfo.proto
+++ b/protocol/proto/GCGCostReviseInfo.proto
@@ -20,13 +20,12 @@ import "GCGAttackCostInfo.proto";
import "GCGPlayCardCostInfo.proto";
import "GCGSelectOnStageCostInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGCostReviseInfo {
- bool is_can_attack = 4;
- repeated uint32 can_use_hand_card_id_list = 11;
+ repeated uint32 can_use_hand_card_id_list = 15;
+ repeated GCGSelectOnStageCostInfo select_on_stage_cost_list = 13;
repeated GCGPlayCardCostInfo play_card_cost_list = 5;
- repeated GCGSelectOnStageCostInfo select_on_stage_cost_list = 10;
- repeated GCGAttackCostInfo attack_cost_list = 2;
+ repeated GCGAttackCostInfo attack_cost_list = 12;
+ bool is_can_attack = 14;
}
diff --git a/protocol/proto/GCGDSBanCardNotify.proto b/protocol/proto/GCGDSBanCardNotify.proto
new file mode 100644
index 00000000..c92487a2
--- /dev/null
+++ b/protocol/proto/GCGDSBanCardNotify.proto
@@ -0,0 +1,31 @@
+// 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 go_package = "./;proto";
+
+message GCGDSBanCardNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7135;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated uint32 card_list = 10;
+}
diff --git a/protocol/proto/GCGDSCardBackUnlockNotify.proto b/protocol/proto/GCGDSCardBackUnlockNotify.proto
index 05284004..2a7acb55 100644
--- a/protocol/proto/GCGDSCardBackUnlockNotify.proto
+++ b/protocol/proto/GCGDSCardBackUnlockNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7265
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSCardBackUnlockNotify {
- uint32 card_back_id = 6;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7078;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 card_back_id = 13;
}
diff --git a/protocol/proto/GCGDSCardData.proto b/protocol/proto/GCGDSCardData.proto
index d5695ea1..fc692862 100644
--- a/protocol/proto/GCGDSCardData.proto
+++ b/protocol/proto/GCGDSCardData.proto
@@ -16,13 +16,13 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGDSCardData {
- uint32 card_id = 14;
- repeated uint32 unlock_face_type_list = 9;
- uint32 num = 12;
- uint32 proficiency = 8;
- uint32 face_type = 6;
+ uint32 num = 11;
+ uint32 face_type = 5;
+ uint32 card_id = 4;
+ repeated uint32 proficiency_reward_taken_idx_list = 14;
+ repeated uint32 unlock_face_type_list = 6;
+ uint32 proficiency = 10;
}
diff --git a/protocol/proto/GCGDSCardFaceUnlockNotify.proto b/protocol/proto/GCGDSCardFaceUnlockNotify.proto
index efc101fe..7353b074 100644
--- a/protocol/proto/GCGDSCardFaceUnlockNotify.proto
+++ b/protocol/proto/GCGDSCardFaceUnlockNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7049
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSCardFaceUnlockNotify {
- uint32 card_id = 13;
- uint32 face_type = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7767;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 face_type = 13;
+ uint32 card_id = 8;
}
diff --git a/protocol/proto/GCGDSCardFaceUpdateNotify.proto b/protocol/proto/GCGDSCardFaceUpdateNotify.proto
new file mode 100644
index 00000000..c97593c0
--- /dev/null
+++ b/protocol/proto/GCGDSCardFaceUpdateNotify.proto
@@ -0,0 +1,32 @@
+// 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 go_package = "./;proto";
+
+message GCGDSCardFaceUpdateNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7066;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 card_id = 9;
+ uint32 face_type = 1;
+}
diff --git a/protocol/proto/GCGDSCardNumChangeNotify.proto b/protocol/proto/GCGDSCardNumChangeNotify.proto
index e589db41..753c42a8 100644
--- a/protocol/proto/GCGDSCardNumChangeNotify.proto
+++ b/protocol/proto/GCGDSCardNumChangeNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7358
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSCardNumChangeNotify {
- uint32 card_id = 4;
- uint32 num = 10;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7244;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 num = 1;
+ uint32 card_id = 15;
}
diff --git a/protocol/proto/GCGDSCardProficiencyNotify.proto b/protocol/proto/GCGDSCardProficiencyNotify.proto
index 19d377bf..f3a4ab33 100644
--- a/protocol/proto/GCGDSCardProficiencyNotify.proto
+++ b/protocol/proto/GCGDSCardProficiencyNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7680
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSCardProficiencyNotify {
- uint32 proficiency = 2;
- uint32 card_id = 12;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7969;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 proficiency = 10;
+ uint32 card_id = 13;
}
diff --git a/protocol/proto/GCGDSChangeCardBackReq.proto b/protocol/proto/GCGDSChangeCardBackReq.proto
index 010e31ea..39c9b4bc 100644
--- a/protocol/proto/GCGDSChangeCardBackReq.proto
+++ b/protocol/proto/GCGDSChangeCardBackReq.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7292
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSChangeCardBackReq {
- uint32 deck_id = 10;
- uint32 card_back_id = 12;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7680;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 card_back_id = 15;
+ uint32 deck_id = 13;
}
diff --git a/protocol/proto/GCGDSChangeCardBackRsp.proto b/protocol/proto/GCGDSChangeCardBackRsp.proto
index a5223aec..d2b185bb 100644
--- a/protocol/proto/GCGDSChangeCardBackRsp.proto
+++ b/protocol/proto/GCGDSChangeCardBackRsp.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7044
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSChangeCardBackRsp {
- int32 retcode = 15;
- uint32 card_back_id = 6;
- uint32 deck_id = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7011;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 13;
+ uint32 card_back_id = 5;
+ uint32 deck_id = 9;
}
diff --git a/protocol/proto/GCGDSChangeCardFaceReq.proto b/protocol/proto/GCGDSChangeCardFaceReq.proto
index 71a94e43..0ffa1d72 100644
--- a/protocol/proto/GCGDSChangeCardFaceReq.proto
+++ b/protocol/proto/GCGDSChangeCardFaceReq.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7169
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSChangeCardFaceReq {
- uint32 face_type = 6;
- uint32 card_id = 3;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7010;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 card_id = 9;
+ uint32 face_type = 14;
}
diff --git a/protocol/proto/GCGDSChangeCardFaceRsp.proto b/protocol/proto/GCGDSChangeCardFaceRsp.proto
index 7747fff2..1bd76896 100644
--- a/protocol/proto/GCGDSChangeCardFaceRsp.proto
+++ b/protocol/proto/GCGDSChangeCardFaceRsp.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7331
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSChangeCardFaceRsp {
- uint32 face_type = 8;
- uint32 card_id = 4;
- int32 retcode = 9;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7549;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 face_type = 9;
+ int32 retcode = 5;
+ uint32 card_id = 8;
}
diff --git a/protocol/proto/GCGDSChangeCurDeckReq.proto b/protocol/proto/GCGDSChangeCurDeckReq.proto
index cb030d37..578c3251 100644
--- a/protocol/proto/GCGDSChangeCurDeckReq.proto
+++ b/protocol/proto/GCGDSChangeCurDeckReq.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7131
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSChangeCurDeckReq {
- uint32 deck_id = 3;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7257;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 deck_id = 13;
}
diff --git a/protocol/proto/GCGDSChangeCurDeckRsp.proto b/protocol/proto/GCGDSChangeCurDeckRsp.proto
index 6e796396..8f3e03c8 100644
--- a/protocol/proto/GCGDSChangeCurDeckRsp.proto
+++ b/protocol/proto/GCGDSChangeCurDeckRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7301
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSChangeCurDeckRsp {
- int32 retcode = 8;
- uint32 deck_id = 14;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7908;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 6;
+ uint32 deck_id = 3;
}
diff --git a/protocol/proto/GCGDSChangeDeckNameReq.proto b/protocol/proto/GCGDSChangeDeckNameReq.proto
index b63ef204..49a9d10c 100644
--- a/protocol/proto/GCGDSChangeDeckNameReq.proto
+++ b/protocol/proto/GCGDSChangeDeckNameReq.proto
@@ -16,14 +16,19 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7432
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSChangeDeckNameReq {
- uint32 deck_id = 13;
- string name = 7;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7463;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ bool Unk3300_OIPMFIIBPHB = 11;
+ uint32 deck_id = 2;
+ string name = 1;
}
diff --git a/protocol/proto/GCGDSChangeDeckNameRsp.proto b/protocol/proto/GCGDSChangeDeckNameRsp.proto
index ee52f04e..0aaa2615 100644
--- a/protocol/proto/GCGDSChangeDeckNameRsp.proto
+++ b/protocol/proto/GCGDSChangeDeckNameRsp.proto
@@ -16,14 +16,19 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7916
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSChangeDeckNameRsp {
- uint32 deck_id = 13;
- int32 retcode = 14;
- string name = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7617;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ bool Unk3300_OIPMFIIBPHB = 5;
+ int32 retcode = 15;
+ uint32 deck_id = 10;
+ string name = 7;
}
diff --git a/protocol/proto/GCGDSChangeFieldReq.proto b/protocol/proto/GCGDSChangeFieldReq.proto
index 968ec184..23d0d3b4 100644
--- a/protocol/proto/GCGDSChangeFieldReq.proto
+++ b/protocol/proto/GCGDSChangeFieldReq.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7541
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSChangeFieldReq {
- uint32 field_id = 6;
- uint32 deck_id = 11;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7788;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 field_id = 3;
+ uint32 deck_id = 13;
}
diff --git a/protocol/proto/GCGDSChangeFieldRsp.proto b/protocol/proto/GCGDSChangeFieldRsp.proto
index 2f64e8dc..dfd494c2 100644
--- a/protocol/proto/GCGDSChangeFieldRsp.proto
+++ b/protocol/proto/GCGDSChangeFieldRsp.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7444
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSChangeFieldRsp {
- int32 retcode = 1;
- uint32 field_id = 3;
- uint32 deck_id = 2;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7036;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 14;
+ uint32 deck_id = 6;
+ uint32 field_id = 1;
}
diff --git a/protocol/proto/GCGDSCurDeckChangeNotify.proto b/protocol/proto/GCGDSCurDeckChangeNotify.proto
index 615abd92..fe5905b5 100644
--- a/protocol/proto/GCGDSCurDeckChangeNotify.proto
+++ b/protocol/proto/GCGDSCurDeckChangeNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7796
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSCurDeckChangeNotify {
- uint32 deck_id = 6;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7769;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 deck_id = 3;
}
diff --git a/protocol/proto/GCGDSDataNotify.proto b/protocol/proto/GCGDSDataNotify.proto
index 0a996ee4..23944809 100644
--- a/protocol/proto/GCGDSDataNotify.proto
+++ b/protocol/proto/GCGDSDataNotify.proto
@@ -19,17 +19,21 @@ syntax = "proto3";
import "GCGDSCardData.proto";
import "GCGDSDeckData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7122
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSDataNotify {
- repeated GCGDSDeckData deck_list = 4;
- repeated uint32 unlock_card_back_id_list = 5;
- repeated uint32 unlock_field_id_list = 6;
- uint32 cur_deck_id = 10;
- repeated GCGDSCardData card_list = 3;
- repeated uint32 unlock_deck_id_list = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7850;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 cur_deck_id = 8;
+ repeated GCGDSDeckData deck_list = 3;
+ repeated uint32 unlock_card_back_id_list = 10;
+ repeated GCGDSCardData card_list = 9;
+ repeated uint32 unlock_field_id_list = 5;
+ repeated uint32 unlock_deck_id_list = 6;
}
diff --git a/protocol/proto/GCGDSDeckData.proto b/protocol/proto/GCGDSDeckData.proto
index 7aa0c823..6c1c7405 100644
--- a/protocol/proto/GCGDSDeckData.proto
+++ b/protocol/proto/GCGDSDeckData.proto
@@ -16,16 +16,15 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGDSDeckData {
+ fixed32 create_time = 5;
+ uint32 field_id = 13;
+ uint32 card_back_id = 9;
repeated uint32 card_list = 1;
- uint32 card_back_id = 15;
- repeated uint32 character_card_list = 10;
- string name = 5;
- uint32 id = 3;
- fixed32 create_time = 13;
- bool is_valid = 4;
- uint32 field_id = 7;
+ repeated uint32 character_card_list = 7;
+ uint32 id = 12;
+ string name = 10;
+ bool is_valid = 15;
}
diff --git a/protocol/proto/GCGDSDeckSaveReq.proto b/protocol/proto/GCGDSDeckSaveReq.proto
index 7253da45..a37df41d 100644
--- a/protocol/proto/GCGDSDeckSaveReq.proto
+++ b/protocol/proto/GCGDSDeckSaveReq.proto
@@ -16,16 +16,20 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7104
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSDeckSaveReq {
- uint32 deck_id = 1;
- repeated uint32 card_list = 4;
- repeated uint32 character_card_list = 9;
- string name = 14;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7713;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 deck_id = 4;
+ repeated uint32 card_list = 11;
+ repeated uint32 character_card_list = 6;
+ string name = 5;
}
diff --git a/protocol/proto/GCGDSDeckSaveRsp.proto b/protocol/proto/GCGDSDeckSaveRsp.proto
index 51e43f4d..f0cb6e98 100644
--- a/protocol/proto/GCGDSDeckSaveRsp.proto
+++ b/protocol/proto/GCGDSDeckSaveRsp.proto
@@ -16,15 +16,19 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7269
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSDeckSaveRsp {
- fixed32 create_time = 14;
- uint32 deck_id = 11;
- int32 retcode = 8;
- bool is_valid = 4;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7459;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 9;
+ bool is_valid = 5;
+ uint32 deck_id = 15;
+ fixed32 create_time = 7;
}
diff --git a/protocol/proto/GCGDSDeckUnlockNotify.proto b/protocol/proto/GCGDSDeckUnlockNotify.proto
index 26701834..e63e411e 100644
--- a/protocol/proto/GCGDSDeckUnlockNotify.proto
+++ b/protocol/proto/GCGDSDeckUnlockNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7732
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSDeckUnlockNotify {
- uint32 deck_id = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7427;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 deck_id = 14;
}
diff --git a/protocol/proto/GCGDSDeckUpdateNotify.proto b/protocol/proto/GCGDSDeckUpdateNotify.proto
new file mode 100644
index 00000000..cd546b91
--- /dev/null
+++ b/protocol/proto/GCGDSDeckUpdateNotify.proto
@@ -0,0 +1,32 @@
+// 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 go_package = "./;proto";
+
+message GCGDSDeckUpdateNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7751;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ bool is_valid = 2;
+ uint32 deck_id = 15;
+}
diff --git a/protocol/proto/GCGDSDeleteDeckReq.proto b/protocol/proto/GCGDSDeleteDeckReq.proto
index 987daffd..5dc3f3aa 100644
--- a/protocol/proto/GCGDSDeleteDeckReq.proto
+++ b/protocol/proto/GCGDSDeleteDeckReq.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7988
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGDSDeleteDeckReq {
- uint32 deck_id = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7821;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 deck_id = 1;
}
diff --git a/protocol/proto/GCGDSDeleteDeckRsp.proto b/protocol/proto/GCGDSDeleteDeckRsp.proto
index 3a74694d..0764cdfc 100644
--- a/protocol/proto/GCGDSDeleteDeckRsp.proto
+++ b/protocol/proto/GCGDSDeleteDeckRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7524
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSDeleteDeckRsp {
- int32 retcode = 14;
- uint32 deck_id = 7;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7067;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 deck_id = 14;
+ int32 retcode = 13;
}
diff --git a/protocol/proto/GCGDSFieldUnlockNotify.proto b/protocol/proto/GCGDSFieldUnlockNotify.proto
index a1159cac..b8b6f4c7 100644
--- a/protocol/proto/GCGDSFieldUnlockNotify.proto
+++ b/protocol/proto/GCGDSFieldUnlockNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7333
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGDSFieldUnlockNotify {
- uint32 field_id = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7860;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 field_id = 12;
}
diff --git a/protocol/proto/GCGDSTakeCardProficiencyRewardReq.proto b/protocol/proto/GCGDSTakeCardProficiencyRewardReq.proto
new file mode 100644
index 00000000..f9fadd7e
--- /dev/null
+++ b/protocol/proto/GCGDSTakeCardProficiencyRewardReq.proto
@@ -0,0 +1,33 @@
+// 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 go_package = "./;proto";
+
+message GCGDSTakeCardProficiencyRewardReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7001;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 reward_index = 15;
+ uint32 card_id = 3;
+}
diff --git a/protocol/proto/GCGDSTakeCardProficiencyRewardRsp.proto b/protocol/proto/GCGDSTakeCardProficiencyRewardRsp.proto
new file mode 100644
index 00000000..4e77ffeb
--- /dev/null
+++ b/protocol/proto/GCGDSTakeCardProficiencyRewardRsp.proto
@@ -0,0 +1,33 @@
+// 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 go_package = "./;proto";
+
+message GCGDSTakeCardProficiencyRewardRsp {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7718;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 card_id = 6;
+ int32 retcode = 1;
+ uint32 reward_index = 15;
+}
diff --git a/protocol/proto/GCGDamageDetail.proto b/protocol/proto/GCGDamageDetail.proto
index 7de13fb2..6639bc6e 100644
--- a/protocol/proto/GCGDamageDetail.proto
+++ b/protocol/proto/GCGDamageDetail.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGDamageDetail {
- uint32 skill_id = 10;
- uint32 card_guid = 7;
+ uint32 card_guid = 4;
+ uint32 skill_id = 12;
}
diff --git a/protocol/proto/GCGDebugReplayNotify.proto b/protocol/proto/GCGDebugReplayNotify.proto
new file mode 100644
index 00000000..56536495
--- /dev/null
+++ b/protocol/proto/GCGDebugReplayNotify.proto
@@ -0,0 +1,31 @@
+// 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 go_package = "./;proto";
+
+message GCGDebugReplayNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7071;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ string json_str = 15;
+}
diff --git a/protocol/proto/GCGDiceSideType.proto b/protocol/proto/GCGDiceSideType.proto
index fc8d9f4c..0fe73103 100644
--- a/protocol/proto/GCGDiceSideType.proto
+++ b/protocol/proto/GCGDiceSideType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGDiceSideType {
diff --git a/protocol/proto/GCGDuel.proto b/protocol/proto/GCGDuel.proto
index f06865d4..ddc8e424 100644
--- a/protocol/proto/GCGDuel.proto
+++ b/protocol/proto/GCGDuel.proto
@@ -21,27 +21,33 @@ import "GCGControllerShowInfo.proto";
import "GCGCostReviseInfo.proto";
import "GCGDuelChallenge.proto";
import "GCGGameBusinessType.proto";
+import "GCGMessagePack.proto";
import "GCGPVEIntention.proto";
import "GCGPhase.proto";
import "GCGPlayerField.proto";
+import "Unk3300_ADHENCIFKNI.proto";
-package proto;
option go_package = "./;proto";
message GCGDuel {
uint32 server_seq = 3;
- repeated GCGPlayerField field_list = 7;
- GCGGameBusinessType business_type = 14;
- repeated GCGDuelChallenge challenge_list = 5;
- uint32 game_id = 11;
- uint32 controller_id = 13;
- uint32 round = 15;
- uint32 cur_controller_id = 12;
- repeated GCGPVEIntention intention_list = 1;
- GCGCostReviseInfo cost_revise = 10;
- repeated uint32 card_id_list = 4;
- repeated GCGCard card_list = 9;
- repeated GCGControllerShowInfo show_info_list = 6;
- uint32 game_type = 2;
- GCGPhase phase = 8;
+ repeated GCGControllerShowInfo show_info_list = 7;
+ repeated uint32 forbid_finish_challenge_list = 192;
+ repeated GCGCard card_list = 1;
+ uint32 Unk3300_BIANMOPDEHO = 9;
+ GCGCostReviseInfo cost_revise = 8;
+ uint32 game_id = 4;
+ repeated GCGPlayerField field_list = 5;
+ repeated Unk3300_ADHENCIFKNI Unk3300_CDCMBOKBLAK = 1987;
+ GCGGameBusinessType business_type = 13;
+ repeated GCGPVEIntention intention_list = 2;
+ repeated GCGDuelChallenge challenge_list = 1617;
+ repeated GCGCard history_card_list = 1872;
+ uint32 round = 11;
+ uint32 controller_id = 12;
+ repeated GCGMessagePack history_msg_pack_list = 797;
+ uint32 Unk3300_JHDDNKFPINA = 10;
+ repeated uint32 card_id_list = 6;
+ uint32 Unk3300_JBBMBKGOONO = 15;
+ GCGPhase phase = 14;
}
diff --git a/protocol/proto/GCGDuelChallenge.proto b/protocol/proto/GCGDuelChallenge.proto
index 89dd6d8b..3a5be7fd 100644
--- a/protocol/proto/GCGDuelChallenge.proto
+++ b/protocol/proto/GCGDuelChallenge.proto
@@ -16,11 +16,10 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGDuelChallenge {
- uint32 total_progress = 7;
- uint32 challenge_id = 10;
- uint32 cur_progress = 12;
+ uint32 challenge_id = 12;
+ uint32 cur_progress = 2;
+ uint32 total_progress = 4;
}
diff --git a/protocol/proto/GCGDuelExtra.proto b/protocol/proto/GCGDuelExtra.proto
index be18be4a..63d8ddc4 100644
--- a/protocol/proto/GCGDuelExtra.proto
+++ b/protocol/proto/GCGDuelExtra.proto
@@ -17,8 +17,8 @@
syntax = "proto3";
import "GCGChallengeData.proto";
+import "PlatformType.proto";
-package proto;
option go_package = "./;proto";
message GCGDuelExtra {
@@ -28,4 +28,11 @@ message GCGDuelExtra {
map card_face_map = 4;
repeated GCGChallengeData challenge_list = 5;
uint32 score = 6;
+ bool is_match_ai = 7;
+ uint32 ai_deck_id = 8;
+ bool is_internal = 9;
+ repeated uint32 forbid_finish_challenge_list = 10;
+ uint32 level = 11;
+ uint32 client_version = 12;
+ PlatformType platform_type = 13;
}
diff --git a/protocol/proto/GCGEndReason.proto b/protocol/proto/GCGEndReason.proto
index 23e7b432..91d89b8f 100644
--- a/protocol/proto/GCGEndReason.proto
+++ b/protocol/proto/GCGEndReason.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGEndReason {
@@ -25,4 +24,10 @@ enum GCGEndReason {
GCG_END_REASON_SURRENDER = 2;
GCG_END_REASON_DISCONNECTED = 3;
GCG_END_REASON_ROUND_LIMIT = 4;
+ GCG_END_REASON_GM = 5;
+ GCG_END_REASON_NO_PLAYER = 6;
+ GCG_END_REASON_GIVE_UP = 7;
+ GCG_END_REASON_INIT_TIMEOUT = 8;
+ GCG_END_REASON_EFFECT = 9;
+ GCG_END_REASON_Unk3300_INAPHKAKKHF = 10;
}
diff --git a/protocol/proto/GCGGameBriefData.proto b/protocol/proto/GCGGameBriefData.proto
index fcf5f0a8..20089a49 100644
--- a/protocol/proto/GCGGameBriefData.proto
+++ b/protocol/proto/GCGGameBriefData.proto
@@ -19,13 +19,13 @@ syntax = "proto3";
import "GCGGameBusinessType.proto";
import "GCGPlayerBriefData.proto";
-package proto;
option go_package = "./;proto";
message GCGGameBriefData {
- uint32 game_id = 14;
- uint32 game_uid = 9;
- GCGGameBusinessType business_type = 13;
- uint32 verify_code = 5;
- repeated GCGPlayerBriefData player_brief_list = 12;
+ uint32 Unk3300_NCLDOGNCHGF = 13;
+ GCGGameBusinessType business_type = 8;
+ uint32 Unk3300_FJJDMIBIBJN = 14;
+ uint32 platform_type = 6;
+ uint32 game_id = 12;
+ repeated GCGPlayerBriefData player_brief_list = 5;
}
diff --git a/protocol/proto/GCGGameBriefDataNotify.proto b/protocol/proto/GCGGameBriefDataNotify.proto
index 5432d6bc..9f03c490 100644
--- a/protocol/proto/GCGGameBriefDataNotify.proto
+++ b/protocol/proto/GCGGameBriefDataNotify.proto
@@ -18,12 +18,17 @@ syntax = "proto3";
import "GCGGameBriefData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7539
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGGameBriefDataNotify {
- GCGGameBriefData gcg_brief_data = 10;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7824;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ GCGGameBriefData gcg_brief_data = 3;
+ bool is_new_game = 4;
}
diff --git a/protocol/proto/GCGGameBusinessType.proto b/protocol/proto/GCGGameBusinessType.proto
index 1cdf59f1..42cd64cd 100644
--- a/protocol/proto/GCGGameBusinessType.proto
+++ b/protocol/proto/GCGGameBusinessType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGGameBusinessType {
@@ -29,4 +28,7 @@ enum GCGGameBusinessType {
GCG_GAME_BUSINESS_TYPE_WORLD_CHALLENGE = 6;
GCG_GAME_BUSINESS_TYPE_BOSS_CHALLENGE = 7;
GCG_GAME_BUSINESS_TYPE_WEEK_CHALLENGE = 8;
+ GCG_GAME_BUSINESS_TYPE_BREAK_CHALLENGE = 9;
+ GCG_GAME_BUSINESS_TYPE_QUEST = 10;
+ GCG_GAME_BUSINESS_TYPE_GUIDE_GROUP = 11;
}
diff --git a/protocol/proto/GCGGameCreateFailReasonNotify.proto b/protocol/proto/GCGGameCreateFailReasonNotify.proto
new file mode 100644
index 00000000..2393b8b6
--- /dev/null
+++ b/protocol/proto/GCGGameCreateFailReasonNotify.proto
@@ -0,0 +1,40 @@
+// 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 go_package = "./;proto";
+
+message GCGGameCreateFailReasonNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7658;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ enum GCGGameCreateReason {
+ GCG_GAME_CREATE_REASON_NONE = 0;
+ GCG_GAME_CREATE_REASON_GAME_MAX = 1;
+ GCG_GAME_CREATE_REASON_CLIENT_VERSION_NOT_LATEST = 2;
+ GCG_GAME_CREATE_REASON_RESOURCE_NOT_COMPLETE = 3;
+ GCG_GAME_CREATE_REASON_TIMEOUT = 4;
+ GCG_GAME_CREATE_REASON_Unk3300_EMCDFGGFFAH = 5;
+ }
+
+ GCGGameCreateReason reason = 7;
+}
diff --git a/protocol/proto/GCGGameMaxNotify.proto b/protocol/proto/GCGGameMaxNotify.proto
new file mode 100644
index 00000000..8d4b2256
--- /dev/null
+++ b/protocol/proto/GCGGameMaxNotify.proto
@@ -0,0 +1,29 @@
+// 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 go_package = "./;proto";
+
+message GCGGameMaxNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7226;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+}
diff --git a/protocol/proto/GCGGrowthLevelNotify.proto b/protocol/proto/GCGGrowthLevelNotify.proto
index ba692884..7de084f7 100644
--- a/protocol/proto/GCGGrowthLevelNotify.proto
+++ b/protocol/proto/GCGGrowthLevelNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7736
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGGrowthLevelNotify {
- uint32 exp = 7;
- uint32 level = 11;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7343;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 level = 10;
+ uint32 exp = 2;
}
diff --git a/protocol/proto/GCGGrowthLevelRewardNotify.proto b/protocol/proto/GCGGrowthLevelRewardNotify.proto
index e71dc83b..2f44a9da 100644
--- a/protocol/proto/GCGGrowthLevelRewardNotify.proto
+++ b/protocol/proto/GCGGrowthLevelRewardNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7477
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGGrowthLevelRewardNotify {
- repeated uint32 level_reward_taken_list = 8;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7934;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated uint32 level_reward_taken_list = 2;
}
diff --git a/protocol/proto/GCGGrowthLevelTakeRewardReq.proto b/protocol/proto/GCGGrowthLevelTakeRewardReq.proto
index 4ec6738a..8cfbb485 100644
--- a/protocol/proto/GCGGrowthLevelTakeRewardReq.proto
+++ b/protocol/proto/GCGGrowthLevelTakeRewardReq.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7051
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGGrowthLevelTakeRewardReq {
- uint32 level = 4;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7486;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 level = 12;
}
diff --git a/protocol/proto/GCGGrowthLevelTakeRewardRsp.proto b/protocol/proto/GCGGrowthLevelTakeRewardRsp.proto
index 815e4ced..632c91cd 100644
--- a/protocol/proto/GCGGrowthLevelTakeRewardRsp.proto
+++ b/protocol/proto/GCGGrowthLevelTakeRewardRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7670
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGGrowthLevelTakeRewardRsp {
- uint32 level = 1;
- int32 retcode = 13;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7602;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 4;
+ uint32 level = 11;
}
diff --git a/protocol/proto/GCGHeartBeatNotify.proto b/protocol/proto/GCGHeartBeatNotify.proto
index 283ba438..5dfda75a 100644
--- a/protocol/proto/GCGHeartBeatNotify.proto
+++ b/protocol/proto/GCGHeartBeatNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7224
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGHeartBeatNotify {
- uint32 server_seq = 6;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7576;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 server_seq = 12;
}
diff --git a/protocol/proto/GCGInitFinishReq.proto b/protocol/proto/GCGInitFinishReq.proto
index 8d14a873..812907d0 100644
--- a/protocol/proto/GCGInitFinishReq.proto
+++ b/protocol/proto/GCGInitFinishReq.proto
@@ -16,11 +16,15 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7684
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
-message GCGInitFinishReq {}
+message GCGInitFinishReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7348;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+}
diff --git a/protocol/proto/GCGInitFinishRsp.proto b/protocol/proto/GCGInitFinishRsp.proto
index fb649713..9bfe279a 100644
--- a/protocol/proto/GCGInitFinishRsp.proto
+++ b/protocol/proto/GCGInitFinishRsp.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7433
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGInitFinishRsp {
- int32 retcode = 2;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7369;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 4;
}
diff --git a/protocol/proto/GCGIntentionChangeType.proto b/protocol/proto/GCGIntentionChangeType.proto
new file mode 100644
index 00000000..2c75d37d
--- /dev/null
+++ b/protocol/proto/GCGIntentionChangeType.proto
@@ -0,0 +1,24 @@
+// 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 go_package = "./;proto";
+
+enum GCGIntentionChangeType {
+ GCG_INTENTION_CHANGE_TYPE_NONE = 0;
+ GCG_INTENTION_CHANGE_TYPE_RM = 1;
+}
diff --git a/protocol/proto/GCGInviteBattleNotify.proto b/protocol/proto/GCGInviteBattleNotify.proto
index 92ad67c0..5ab70a57 100644
--- a/protocol/proto/GCGInviteBattleNotify.proto
+++ b/protocol/proto/GCGInviteBattleNotify.proto
@@ -16,10 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7692
-// EnetChannelId: 0
-// EnetIsReliable: true
-message GCGInviteBattleNotify {}
+message GCGInviteBattleNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7448;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 confirm_end_time = 1;
+}
diff --git a/protocol/proto/GCGInviteGuestBattleReq.proto b/protocol/proto/GCGInviteGuestBattleReq.proto
index de98d9db..1ac11a77 100644
--- a/protocol/proto/GCGInviteGuestBattleReq.proto
+++ b/protocol/proto/GCGInviteGuestBattleReq.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7783
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGInviteGuestBattleReq {
- uint32 uid = 11;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7202;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 uid = 8;
}
diff --git a/protocol/proto/GCGInviteGuestBattleRsp.proto b/protocol/proto/GCGInviteGuestBattleRsp.proto
index 5f765fe0..937227b2 100644
--- a/protocol/proto/GCGInviteGuestBattleRsp.proto
+++ b/protocol/proto/GCGInviteGuestBattleRsp.proto
@@ -16,13 +16,19 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7251
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGInviteGuestBattleRsp {
- int32 retcode = 3;
- uint32 uid = 11;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7997;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 uid = 12;
+ int32 retcode = 13;
+ uint32 punish_end_time = 3;
+ uint32 confirm_end_time = 7;
}
diff --git a/protocol/proto/GCGLevelChallengeDeleteNotify.proto b/protocol/proto/GCGLevelChallengeDeleteNotify.proto
new file mode 100644
index 00000000..2bc8c75b
--- /dev/null
+++ b/protocol/proto/GCGLevelChallengeDeleteNotify.proto
@@ -0,0 +1,31 @@
+// 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 go_package = "./;proto";
+
+message GCGLevelChallengeDeleteNotify {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7993;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated uint32 level_id_list = 6;
+}
diff --git a/protocol/proto/GCGLevelChallengeFinishNotify.proto b/protocol/proto/GCGLevelChallengeFinishNotify.proto
index ab1bd639..ad3b840b 100644
--- a/protocol/proto/GCGLevelChallengeFinishNotify.proto
+++ b/protocol/proto/GCGLevelChallengeFinishNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7629
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGLevelChallengeFinishNotify {
- repeated uint32 finished_challenge_id_list = 10;
- uint32 level_id = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7004;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 level_id = 14;
+ repeated uint32 finished_challenge_id_list = 3;
}
diff --git a/protocol/proto/GCGLevelChallengeNotify.proto b/protocol/proto/GCGLevelChallengeNotify.proto
index b34dc440..b4d2bd2b 100644
--- a/protocol/proto/GCGLevelChallengeNotify.proto
+++ b/protocol/proto/GCGLevelChallengeNotify.proto
@@ -19,14 +19,18 @@ syntax = "proto3";
import "GCGBossChallengeData.proto";
import "GCGLevelData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7055
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGLevelChallengeNotify {
- repeated GCGBossChallengeData unlock_boss_challenge_list = 3;
- repeated uint32 unlock_world_challenge_list = 8;
- repeated GCGLevelData level_list = 10;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7183;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated GCGBossChallengeData unlock_boss_challenge_list = 11;
+ repeated uint32 unlock_world_challenge_list = 3;
+ repeated GCGLevelData level_list = 4;
}
diff --git a/protocol/proto/GCGLevelData.proto b/protocol/proto/GCGLevelData.proto
index 16527dad..61a281dc 100644
--- a/protocol/proto/GCGLevelData.proto
+++ b/protocol/proto/GCGLevelData.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGLevelData {
- repeated uint32 finished_challenge_id_list = 10;
- uint32 level_id = 9;
+ repeated uint32 finished_challenge_id_list = 13;
+ uint32 level_id = 7;
}
diff --git a/protocol/proto/GCGLevelType.proto b/protocol/proto/GCGLevelType.proto
index fcfb85ef..31c1390c 100644
--- a/protocol/proto/GCGLevelType.proto
+++ b/protocol/proto/GCGLevelType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGLevelType {
@@ -26,4 +25,7 @@ enum GCGLevelType {
GCG_LEVEL_TYPE_WORLD = 3;
GCG_LEVEL_TYPE_BOSS = 4;
GCG_LEVEL_TYPE_CHARACTER = 5;
+ GCG_LEVEL_TYPE_BREAK = 6;
+ GCG_LEVEL_TYPE_QUEST = 7;
+ GCG_LEVEL_TYPE_GUIDE_GROUP = 8;
}
diff --git a/protocol/proto/GCGLimitsInfo.proto b/protocol/proto/GCGLimitsInfo.proto
new file mode 100644
index 00000000..022e8842
--- /dev/null
+++ b/protocol/proto/GCGLimitsInfo.proto
@@ -0,0 +1,24 @@
+// 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 go_package = "./;proto";
+
+message GCGLimitsInfo {
+ uint32 Unk3300_MNCNOLHHGPA = 7;
+ uint32 Unk3300_PHKPKFBDGJF = 13;
+}
diff --git a/protocol/proto/GCGMatchInfo.proto b/protocol/proto/GCGMatchInfo.proto
index 0f0f7f80..ec7bb200 100644
--- a/protocol/proto/GCGMatchInfo.proto
+++ b/protocol/proto/GCGMatchInfo.proto
@@ -18,9 +18,8 @@ syntax = "proto3";
import "MatchPlayerInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGMatchInfo {
- repeated MatchPlayerInfo player_list = 13;
+ repeated MatchPlayerInfo player_list = 15;
}
diff --git a/protocol/proto/GCGMessage.proto b/protocol/proto/GCGMessage.proto
index c5ee93dc..5df466f6 100644
--- a/protocol/proto/GCGMessage.proto
+++ b/protocol/proto/GCGMessage.proto
@@ -31,14 +31,19 @@ import "GCGMsgModifyAdd.proto";
import "GCGMsgModifyRemove.proto";
import "GCGMsgMoveCard.proto";
import "GCGMsgNewCard.proto";
+import "GCGMsgNoDamageSkillResult.proto";
import "GCGMsgOpTimer.proto";
-import "GCGMsgPVEDoOp.proto";
-import "GCGMsgPVEGenCardOp.proto";
+import "GCGMsgPVEIntentionChange.proto";
+import "GCGMsgPVEIntentionInfo.proto";
import "GCGMsgPass.proto";
import "GCGMsgPhaseChange.proto";
+import "GCGMsgPhaseContinue.proto";
+import "GCGMsgReactionBegin.proto";
+import "GCGMsgReactionEnd.proto";
import "GCGMsgRemoveCards.proto";
import "GCGMsgSelectOnStage.proto";
import "GCGMsgSelectOnStageByEffect.proto";
+import "GCGMsgSkillLimitsChange.proto";
import "GCGMsgSkillResult.proto";
import "GCGMsgTokenChange.proto";
import "GCGMsgUpdateController.proto";
@@ -46,39 +51,43 @@ import "GCGMsgUseSkill.proto";
import "GCGMsgUseSkillEnd.proto";
import "GCGMsgWaitingListChange.proto";
-package proto;
option go_package = "./;proto";
message GCGMessage {
oneof message {
- GCGMsgTokenChange token_change = 12;
- GCGMsgPhaseChange phase_change = 13;
- GCGMsgAddCards add_cards = 10;
- GCGMsgRemoveCards remove_cards = 14;
+ GCGMsgTokenChange token_change = 2;
+ GCGMsgPhaseChange phase_change = 10;
+ GCGMsgAddCards add_cards = 5;
+ GCGMsgRemoveCards remove_cards = 12;
GCGMsgSelectOnStage select_on_stage = 6;
- GCGMsgDiceRoll dice_roll = 9;
- GCGMsgDiceReroll dice_reroll = 11;
- GCGMsgPass pass = 5;
- GCGMsgCharDie char_die = 2;
- GCGMsgSkillResult skill_result = 1;
- GCGMsgCostDice cost_dice = 7;
- GCGMsgAddDice add_dice = 3;
- GCGMsgMoveCard move_card = 15;
- GCGMsgUseSkill use_skill = 4;
- GCGMsgNewCard new_card = 1848;
- GCGMsgUpdateController update_controller = 429;
- GCGMsgModifyAdd modify_add = 1851;
- GCGMsgModifyRemove modify_remove = 471;
- GCGMsgUseSkillEnd use_skill_end = 1411;
- GCGMsgPVEGenCardOp pve_gen_card_op = 1741;
- GCGMsgPVEDoOp pve_do_op = 614;
- GCGMsgDuelDataChange duel_data_change = 1008;
- GCGMsgClientPerform client_perform = 1035;
- GCGMsgGameOver game_over = 714;
- GCGMsgOpTimer op_timer = 1862;
- GCGMsgWaitingListChange waiting_list_change = 1678;
- GCGMsgCardUpdate card_update = 1879;
- GCGMsgSelectOnStageByEffect select_on_stage_by_effect = 2042;
- GCGMsgCostRevise cost_revise = 1350;
+ GCGMsgDiceRoll dice_roll = 14;
+ GCGMsgDiceReroll dice_reroll = 15;
+ GCGMsgPass pass = 8;
+ GCGMsgCharDie char_die = 4;
+ GCGMsgSkillResult skill_result = 3;
+ GCGMsgCostDice cost_dice = 13;
+ GCGMsgAddDice add_dice = 7;
+ GCGMsgMoveCard move_card = 11;
+ GCGMsgUseSkill use_skill = 1;
+ GCGMsgNewCard new_card = 296;
+ GCGMsgUpdateController update_controller = 1111;
+ GCGMsgModifyAdd modify_add = 1733;
+ GCGMsgModifyRemove modify_remove = 2014;
+ GCGMsgUseSkillEnd use_skill_end = 1368;
+ GCGMsgDuelDataChange duel_data_change = 1791;
+ GCGMsgClientPerform client_perform = 1677;
+ GCGMsgGameOver game_over = 632;
+ GCGMsgOpTimer op_timer = 154;
+ GCGMsgWaitingListChange waiting_list_change = 1991;
+ GCGMsgCardUpdate card_update = 1702;
+ GCGMsgSelectOnStageByEffect select_on_stage_by_effect = 1737;
+ GCGMsgCostRevise cost_revise = 468;
+ GCGMsgPhaseContinue phase_continue = 1157;
+ GCGMsgPVEIntentionInfo pve_intention_info = 850;
+ GCGMsgPVEIntentionChange pve_intention_change = 1268;
+ GCGMsgSkillLimitsChange skill_limits_change = 710;
+ GCGMsgNoDamageSkillResult no_damage_skill_result = 773;
+ GCGMsgReactionBegin reaction_begin = 243;
+ GCGMsgReactionEnd reaction_end = 1172;
}
}
diff --git a/protocol/proto/GCGMessagePack.proto b/protocol/proto/GCGMessagePack.proto
index 05f7a2c6..8ebdef3b 100644
--- a/protocol/proto/GCGMessagePack.proto
+++ b/protocol/proto/GCGMessagePack.proto
@@ -16,12 +16,13 @@
syntax = "proto3";
+import "GCGActionType.proto";
import "GCGMessage.proto";
-package proto;
option go_package = "./;proto";
message GCGMessagePack {
- uint32 msg_seq = 10;
- repeated GCGMessage msg_list = 13;
+ GCGActionType action_type = 9;
+ repeated GCGMessage msg_list = 5;
+ uint32 controller_id = 7;
}
diff --git a/protocol/proto/GCGMessagePackNotify.proto b/protocol/proto/GCGMessagePackNotify.proto
index 8e62fef5..1a1a5614 100644
--- a/protocol/proto/GCGMessagePackNotify.proto
+++ b/protocol/proto/GCGMessagePackNotify.proto
@@ -18,14 +18,17 @@ syntax = "proto3";
import "GCGMessagePack.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7516
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGMessagePackNotify {
- uint32 server_seq = 5;
- GCGMessagePack message_pack = 8;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7299;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 server_seq = 2;
+ repeated GCGMessagePack msg_pack_list = 12;
}
diff --git a/protocol/proto/GCGMsgAddCards.proto b/protocol/proto/GCGMsgAddCards.proto
index e16d7549..daa30885 100644
--- a/protocol/proto/GCGMsgAddCards.proto
+++ b/protocol/proto/GCGMsgAddCards.proto
@@ -19,13 +19,12 @@ syntax = "proto3";
import "GCGReason.proto";
import "GCGZoneType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgAddCards {
- uint32 pos = 11;
- GCGZoneType zone = 2;
- GCGReason reason = 15;
- uint32 controller_id = 13;
- repeated uint32 card_guid_list = 14;
+ GCGZoneType zone = 5;
+ GCGReason reason = 7;
+ repeated uint32 card_guid_list = 4;
+ uint32 controller_id = 9;
+ uint32 pos = 14;
}
diff --git a/protocol/proto/GCGMsgAddDice.proto b/protocol/proto/GCGMsgAddDice.proto
index 728749f3..07e40a1d 100644
--- a/protocol/proto/GCGMsgAddDice.proto
+++ b/protocol/proto/GCGMsgAddDice.proto
@@ -19,12 +19,12 @@ syntax = "proto3";
import "GCGDiceSideType.proto";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgAddDice {
- GCGReason reason = 4;
- uint32 controller_id = 10;
- int32 change_count = 1;
- map dice_map = 8;
+ map Unk3300_KFKOGOKPIFN = 13;
+ GCGReason reason = 10;
+ int32 change_count = 6;
+ map Unk3300_PCMPCCLFEIM = 11;
+ uint32 controller_id = 5;
}
diff --git a/protocol/proto/GCGMsgCardUpdate.proto b/protocol/proto/GCGMsgCardUpdate.proto
index 481c38a7..69f85853 100644
--- a/protocol/proto/GCGMsgCardUpdate.proto
+++ b/protocol/proto/GCGMsgCardUpdate.proto
@@ -18,9 +18,8 @@ syntax = "proto3";
import "GCGCard.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgCardUpdate {
- GCGCard card = 7;
+ GCGCard card = 14;
}
diff --git a/protocol/proto/GCGMsgCharDie.proto b/protocol/proto/GCGMsgCharDie.proto
index 965f2965..78b66994 100644
--- a/protocol/proto/GCGMsgCharDie.proto
+++ b/protocol/proto/GCGMsgCharDie.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgCharDie {
- uint32 controller_id = 5;
- uint32 card_guid = 11;
+ uint32 controller_id = 13;
+ uint32 card_guid = 7;
}
diff --git a/protocol/proto/GCGMsgClientPerform.proto b/protocol/proto/GCGMsgClientPerform.proto
index 33e96eb9..65686822 100644
--- a/protocol/proto/GCGMsgClientPerform.proto
+++ b/protocol/proto/GCGMsgClientPerform.proto
@@ -18,10 +18,9 @@ syntax = "proto3";
import "GCGClientPerformType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgClientPerform {
- repeated uint32 param_list = 2;
- GCGClientPerformType perform_type = 5;
+ repeated uint32 param_list = 4;
+ GCGClientPerformType perform_type = 1;
}
diff --git a/protocol/proto/GCGMsgCostDice.proto b/protocol/proto/GCGMsgCostDice.proto
index 4a423a94..116fbc4b 100644
--- a/protocol/proto/GCGMsgCostDice.proto
+++ b/protocol/proto/GCGMsgCostDice.proto
@@ -18,11 +18,10 @@ syntax = "proto3";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgCostDice {
- uint32 controller_id = 6;
- repeated uint32 select_dice_index_list = 13;
- GCGReason reason = 9;
+ GCGReason reason = 1;
+ repeated uint32 select_dice_index_list = 12;
+ uint32 controller_id = 7;
}
diff --git a/protocol/proto/GCGMsgCostRevise.proto b/protocol/proto/GCGMsgCostRevise.proto
index e7d74577..09fd91c6 100644
--- a/protocol/proto/GCGMsgCostRevise.proto
+++ b/protocol/proto/GCGMsgCostRevise.proto
@@ -18,10 +18,9 @@ syntax = "proto3";
import "GCGCostReviseInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgCostRevise {
- uint32 controller_id = 5;
- GCGCostReviseInfo cost_revise = 13;
+ GCGCostReviseInfo cost_revise = 3;
+ uint32 controller_id = 1;
}
diff --git a/protocol/proto/GCGMsgDiceReroll.proto b/protocol/proto/GCGMsgDiceReroll.proto
index 66340121..17fcb2f1 100644
--- a/protocol/proto/GCGMsgDiceReroll.proto
+++ b/protocol/proto/GCGMsgDiceReroll.proto
@@ -18,11 +18,10 @@ syntax = "proto3";
import "GCGDiceSideType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgDiceReroll {
- uint32 controller_id = 2;
- repeated uint32 select_dice_index_list = 1;
- repeated GCGDiceSideType dice_side_list = 6;
+ uint32 controller_id = 1;
+ repeated GCGDiceSideType dice_side_list = 8;
+ repeated uint32 select_dice_index_list = 12;
}
diff --git a/protocol/proto/GCGMsgDiceRoll.proto b/protocol/proto/GCGMsgDiceRoll.proto
index 009359e9..4633b7a6 100644
--- a/protocol/proto/GCGMsgDiceRoll.proto
+++ b/protocol/proto/GCGMsgDiceRoll.proto
@@ -18,11 +18,10 @@ syntax = "proto3";
import "GCGDiceSideType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgDiceRoll {
- repeated GCGDiceSideType dice_side_list = 10;
- uint32 dice_num = 15;
- uint32 controller_id = 5;
+ uint32 controller_id = 9;
+ uint32 dice_num = 3;
+ repeated GCGDiceSideType dice_side_list = 14;
}
diff --git a/protocol/proto/GCGMsgDuelDataChange.proto b/protocol/proto/GCGMsgDuelDataChange.proto
index 16c103cb..982af2f7 100644
--- a/protocol/proto/GCGMsgDuelDataChange.proto
+++ b/protocol/proto/GCGMsgDuelDataChange.proto
@@ -16,9 +16,8 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgDuelDataChange {
- uint32 round = 14;
+ uint32 round = 6;
}
diff --git a/protocol/proto/GCGMsgGameOver.proto b/protocol/proto/GCGMsgGameOver.proto
index 536d1bb6..d122beca 100644
--- a/protocol/proto/GCGMsgGameOver.proto
+++ b/protocol/proto/GCGMsgGameOver.proto
@@ -18,10 +18,9 @@ syntax = "proto3";
import "GCGEndReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgGameOver {
- GCGEndReason end_reason = 13;
- uint32 win_controller_id = 6;
+ GCGEndReason end_reason = 6;
+ uint32 win_controller_id = 3;
}
diff --git a/protocol/proto/GCGMsgModifyAdd.proto b/protocol/proto/GCGMsgModifyAdd.proto
index a4983746..c0327d3b 100644
--- a/protocol/proto/GCGMsgModifyAdd.proto
+++ b/protocol/proto/GCGMsgModifyAdd.proto
@@ -18,13 +18,12 @@ syntax = "proto3";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgModifyAdd {
+ uint32 owner_card_guid = 11;
uint32 pos = 9;
- uint32 owner_card_guid = 10;
- repeated uint32 card_guid_list = 15;
- uint32 controller_id = 14;
- GCGReason reason = 11;
+ repeated uint32 card_guid_list = 3;
+ uint32 controller_id = 12;
+ GCGReason reason = 15;
}
diff --git a/protocol/proto/GCGMsgModifyRemove.proto b/protocol/proto/GCGMsgModifyRemove.proto
index f7ad4e88..8c9000e8 100644
--- a/protocol/proto/GCGMsgModifyRemove.proto
+++ b/protocol/proto/GCGMsgModifyRemove.proto
@@ -18,12 +18,11 @@ syntax = "proto3";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgModifyRemove {
+ uint32 owner_card_guid = 7;
+ GCGReason reason = 3;
uint32 controller_id = 14;
- GCGReason reason = 12;
- uint32 owner_card_guid = 5;
- repeated uint32 card_guid_list = 4;
+ repeated uint32 card_guid_list = 13;
}
diff --git a/protocol/proto/GCGMsgMoveCard.proto b/protocol/proto/GCGMsgMoveCard.proto
index 8adb31f5..24a6df2d 100644
--- a/protocol/proto/GCGMsgMoveCard.proto
+++ b/protocol/proto/GCGMsgMoveCard.proto
@@ -19,14 +19,13 @@ syntax = "proto3";
import "GCGReason.proto";
import "GCGZoneType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgMoveCard {
- uint32 controller_id = 14;
- GCGZoneType to = 5;
- GCGZoneType from = 12;
- bool is_fail = 10;
- uint32 card_guid = 7;
- GCGReason reason = 6;
+ GCGZoneType to = 9;
+ repeated uint32 fail_guid_list = 2;
+ GCGZoneType from = 14;
+ uint32 controller_id = 4;
+ GCGReason reason = 13;
+ repeated uint32 card_guid_list = 5;
}
diff --git a/protocol/proto/GCGMsgNewCard.proto b/protocol/proto/GCGMsgNewCard.proto
index c2a06db4..77dd09d2 100644
--- a/protocol/proto/GCGMsgNewCard.proto
+++ b/protocol/proto/GCGMsgNewCard.proto
@@ -18,7 +18,6 @@ syntax = "proto3";
import "GCGCard.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgNewCard {
diff --git a/protocol/proto/GCGMsgNoDamageSkillResult.proto b/protocol/proto/GCGMsgNoDamageSkillResult.proto
new file mode 100644
index 00000000..36538248
--- /dev/null
+++ b/protocol/proto/GCGMsgNoDamageSkillResult.proto
@@ -0,0 +1,31 @@
+// 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 "GCGDamageDetail.proto";
+
+option go_package = "./;proto";
+
+message GCGMsgNoDamageSkillResult {
+ uint32 Unk3300_LPGLOCDDPCL = 7;
+ uint32 Unk3300_EPNDCIAJOJP = 6;
+ uint32 target_card_guid = 3;
+ repeated GCGDamageDetail detail_list = 14;
+ uint32 skill_id = 13;
+ uint32 Unk3300_NNJAOEHNPPD = 4;
+ uint32 Unk3300_NIGDCIGLAKE = 11;
+}
diff --git a/protocol/proto/GCGMsgOpTimer.proto b/protocol/proto/GCGMsgOpTimer.proto
index 3dd50a93..08176a5c 100644
--- a/protocol/proto/GCGMsgOpTimer.proto
+++ b/protocol/proto/GCGMsgOpTimer.proto
@@ -18,12 +18,11 @@ syntax = "proto3";
import "GCGPhaseType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgOpTimer {
- fixed64 begin_time = 9;
- GCGPhaseType phase = 3;
- fixed64 time_stamp = 13;
- uint32 controller_id = 8;
+ GCGPhaseType phase = 13;
+ uint32 controller_id = 14;
+ fixed64 time_stamp = 15;
+ fixed64 begin_time = 6;
}
diff --git a/protocol/proto/GCGMsgPVEIntention.proto b/protocol/proto/GCGMsgPVEIntention.proto
new file mode 100644
index 00000000..91b0f172
--- /dev/null
+++ b/protocol/proto/GCGMsgPVEIntention.proto
@@ -0,0 +1,24 @@
+// 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 go_package = "./;proto";
+
+message GCGMsgPVEIntention {
+ uint32 card_guid = 1;
+ repeated uint32 skill_id_list = 2;
+}
diff --git a/protocol/proto/GCGMsgPVEIntentionChange.proto b/protocol/proto/GCGMsgPVEIntentionChange.proto
new file mode 100644
index 00000000..7a94da6a
--- /dev/null
+++ b/protocol/proto/GCGMsgPVEIntentionChange.proto
@@ -0,0 +1,27 @@
+// 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 "GCGIntentionChangeType.proto";
+import "GCGMsgPVEIntention.proto";
+
+option go_package = "./;proto";
+
+message GCGMsgPVEIntentionChange {
+ GCGIntentionChangeType change_type = 9;
+ repeated GCGMsgPVEIntention change_intention_list = 6;
+}
diff --git a/protocol/proto/GCGMsgPVEIntentionInfo.proto b/protocol/proto/GCGMsgPVEIntentionInfo.proto
new file mode 100644
index 00000000..d683c61a
--- /dev/null
+++ b/protocol/proto/GCGMsgPVEIntentionInfo.proto
@@ -0,0 +1,25 @@
+// 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 "GCGMsgPVEIntention.proto";
+
+option go_package = "./;proto";
+
+message GCGMsgPVEIntentionInfo {
+ map intention_map = 14;
+}
diff --git a/protocol/proto/GCGMsgPass.proto b/protocol/proto/GCGMsgPass.proto
index 770262e0..fb542b97 100644
--- a/protocol/proto/GCGMsgPass.proto
+++ b/protocol/proto/GCGMsgPass.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgPass {
diff --git a/protocol/proto/GCGMsgPhaseChange.proto b/protocol/proto/GCGMsgPhaseChange.proto
index 8dd89dec..73063623 100644
--- a/protocol/proto/GCGMsgPhaseChange.proto
+++ b/protocol/proto/GCGMsgPhaseChange.proto
@@ -17,12 +17,12 @@
syntax = "proto3";
import "GCGPhaseType.proto";
+import "Uint32Pair.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgPhaseChange {
- map allow_controller_map = 15;
- GCGPhaseType before_phase = 12;
- GCGPhaseType after_phase = 5;
+ GCGPhaseType before_phase = 15;
+ GCGPhaseType after_phase = 3;
+ repeated Uint32Pair allow_controller_map = 11;
}
diff --git a/protocol/proto/GCGMsgPhaseContinue.proto b/protocol/proto/GCGMsgPhaseContinue.proto
new file mode 100644
index 00000000..b9c6ca8b
--- /dev/null
+++ b/protocol/proto/GCGMsgPhaseContinue.proto
@@ -0,0 +1,21 @@
+// 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 go_package = "./;proto";
+
+message GCGMsgPhaseContinue {}
diff --git a/protocol/proto/GCGMsgReactionBegin.proto b/protocol/proto/GCGMsgReactionBegin.proto
new file mode 100644
index 00000000..0da05916
--- /dev/null
+++ b/protocol/proto/GCGMsgReactionBegin.proto
@@ -0,0 +1,24 @@
+// 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 go_package = "./;proto";
+
+message GCGMsgReactionBegin {
+ uint32 card_guid = 4;
+ uint32 skill_id = 13;
+}
diff --git a/protocol/proto/GCGMsgReactionEnd.proto b/protocol/proto/GCGMsgReactionEnd.proto
new file mode 100644
index 00000000..bcefa357
--- /dev/null
+++ b/protocol/proto/GCGMsgReactionEnd.proto
@@ -0,0 +1,23 @@
+// 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 go_package = "./;proto";
+
+message GCGMsgReactionEnd {
+ uint32 skill_id = 4;
+}
diff --git a/protocol/proto/GCGMsgRemoveCards.proto b/protocol/proto/GCGMsgRemoveCards.proto
index 1ddead93..9b39b559 100644
--- a/protocol/proto/GCGMsgRemoveCards.proto
+++ b/protocol/proto/GCGMsgRemoveCards.proto
@@ -19,12 +19,11 @@ syntax = "proto3";
import "GCGReason.proto";
import "GCGZoneType.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgRemoveCards {
- uint32 controller_id = 15;
- GCGZoneType zone = 10;
- GCGReason reason = 5;
- repeated uint32 card_guid_list = 1;
+ repeated uint32 card_guid_list = 2;
+ GCGReason reason = 13;
+ uint32 controller_id = 9;
+ GCGZoneType zone = 15;
}
diff --git a/protocol/proto/GCGMsgSelectOnStage.proto b/protocol/proto/GCGMsgSelectOnStage.proto
index 50d5c1f0..9ea2cb11 100644
--- a/protocol/proto/GCGMsgSelectOnStage.proto
+++ b/protocol/proto/GCGMsgSelectOnStage.proto
@@ -18,11 +18,10 @@ syntax = "proto3";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgSelectOnStage {
- uint32 controller_id = 6;
- GCGReason reason = 10;
+ GCGReason reason = 11;
+ uint32 controller_id = 12;
uint32 card_guid = 4;
}
diff --git a/protocol/proto/GCGMsgSelectOnStageByEffect.proto b/protocol/proto/GCGMsgSelectOnStageByEffect.proto
index f10244fa..bcd053a7 100644
--- a/protocol/proto/GCGMsgSelectOnStageByEffect.proto
+++ b/protocol/proto/GCGMsgSelectOnStageByEffect.proto
@@ -16,11 +16,10 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgSelectOnStageByEffect {
- uint32 skill_id = 12;
- uint32 controller_id = 15;
- uint32 card_guid = 1;
+ uint32 card_guid = 15;
+ uint32 controller_id = 2;
+ uint32 skill_id = 6;
}
diff --git a/protocol/proto/GCGMsgSkillLimitsChange.proto b/protocol/proto/GCGMsgSkillLimitsChange.proto
new file mode 100644
index 00000000..e03cefb1
--- /dev/null
+++ b/protocol/proto/GCGMsgSkillLimitsChange.proto
@@ -0,0 +1,25 @@
+// 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 "GCGCardSkillLimitsInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGMsgSkillLimitsChange {
+ map card_limits_change_map = 3;
+}
diff --git a/protocol/proto/GCGMsgSkillResult.proto b/protocol/proto/GCGMsgSkillResult.proto
index 70d94d02..1325bb46 100644
--- a/protocol/proto/GCGMsgSkillResult.proto
+++ b/protocol/proto/GCGMsgSkillResult.proto
@@ -18,17 +18,16 @@ syntax = "proto3";
import "GCGDamageDetail.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgSkillResult {
- uint32 skill_id = 12;
- uint32 last_hp = 14;
- repeated GCGDamageDetail detail_list = 2;
- uint32 target_card_guid = 7;
- uint32 effect_element = 5;
- uint32 from_result_seq = 15;
- uint32 damage = 6;
- uint32 result_seq = 4;
- uint32 src_card_guid = 8;
+ uint32 Unk3300_NIGDCIGLAKE = 9;
+ uint32 target_card_guid = 13;
+ uint32 Unk3300_PDBAGJINFPF = 4;
+ repeated GCGDamageDetail detail_list = 5;
+ uint32 skill_id = 14;
+ uint32 damage = 7;
+ uint32 Unk3300_EPNDCIAJOJP = 12;
+ uint32 Unk3300_NNJAOEHNPPD = 15;
+ uint32 Unk3300_LPGLOCDDPCL = 10;
}
diff --git a/protocol/proto/GCGMsgTokenChange.proto b/protocol/proto/GCGMsgTokenChange.proto
index c89fe62a..5ebf04ca 100644
--- a/protocol/proto/GCGMsgTokenChange.proto
+++ b/protocol/proto/GCGMsgTokenChange.proto
@@ -18,13 +18,12 @@ syntax = "proto3";
import "GCGReason.proto";
-package proto;
option go_package = "./;proto";
message GCGMsgTokenChange {
- uint32 before = 13;
- uint32 token_type = 4;
- uint32 card_guid = 2;
- uint32 after = 11;
- GCGReason reason = 7;
+ uint32 token_type = 7;
+ uint32 Unk3300_LLGHGEALDDI = 10;
+ GCGReason reason = 3;
+ uint32 Unk3300_LCNKBFBJDFM = 12;
+ uint32 card_guid = 13;
}
diff --git a/protocol/proto/GCGMsgUpdateController.proto b/protocol/proto/GCGMsgUpdateController.proto
index 20c43927..5f80c2cd 100644
--- a/protocol/proto/GCGMsgUpdateController.proto
+++ b/protocol/proto/GCGMsgUpdateController.proto
@@ -16,9 +16,10 @@
syntax = "proto3";
-package proto;
+import "Uint32Pair.proto";
+
option go_package = "./;proto";
message GCGMsgUpdateController {
- map allow_controller_map = 7;
+ repeated Uint32Pair allow_controller_map = 10;
}
diff --git a/protocol/proto/GCGMsgUseSkill.proto b/protocol/proto/GCGMsgUseSkill.proto
index bc18df5b..c1c1578d 100644
--- a/protocol/proto/GCGMsgUseSkill.proto
+++ b/protocol/proto/GCGMsgUseSkill.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgUseSkill {
- uint32 skill_id = 9;
- uint32 card_guid = 6;
+ uint32 skill_id = 3;
+ uint32 card_guid = 10;
}
diff --git a/protocol/proto/GCGMsgUseSkillEnd.proto b/protocol/proto/GCGMsgUseSkillEnd.proto
index e9cf50e8..3786681a 100644
--- a/protocol/proto/GCGMsgUseSkillEnd.proto
+++ b/protocol/proto/GCGMsgUseSkillEnd.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgUseSkillEnd {
- uint32 card_guid = 11;
- uint32 skill_id = 12;
+ uint32 card_guid = 9;
+ uint32 skill_id = 6;
}
diff --git a/protocol/proto/GCGMsgWaitingListChange.proto b/protocol/proto/GCGMsgWaitingListChange.proto
index c9b3209b..e8790eb5 100644
--- a/protocol/proto/GCGMsgWaitingListChange.proto
+++ b/protocol/proto/GCGMsgWaitingListChange.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGMsgWaitingListChange {
- uint32 cur_index = 6;
- uint32 controller_id = 4;
+ uint32 controller_id = 11;
+ uint32 cur_index = 3;
}
diff --git a/protocol/proto/GCGOperation.proto b/protocol/proto/GCGOperation.proto
index d1fae31b..dc1bd04e 100644
--- a/protocol/proto/GCGOperation.proto
+++ b/protocol/proto/GCGOperation.proto
@@ -25,18 +25,17 @@ import "GCGOperationRedraw.proto";
import "GCGOperationReroll.proto";
import "GCGOperationSurrender.proto";
-package proto;
option go_package = "./;proto";
message GCGOperation {
oneof op {
- GCGOperationRedraw op_redraw = 10;
- GCGOperationOnStageSelect op_select_on_stage = 4;
- GCGOperationReroll op_reroll = 9;
- GCGOperationAttack op_attack = 11;
- GCGOperationPass op_pass = 15;
- GCGOperationPlayCard op_play_card = 2;
+ GCGOperationRedraw op_redraw = 3;
+ GCGOperationOnStageSelect op_select_on_stage = 9;
+ GCGOperationReroll op_reroll = 4;
+ GCGOperationAttack op_attack = 7;
+ GCGOperationPass op_pass = 6;
+ GCGOperationPlayCard op_play_card = 15;
GCGOperationReboot op_reboot = 5;
- GCGOperationSurrender op_surrender = 1;
+ GCGOperationSurrender op_surrender = 10;
}
}
diff --git a/protocol/proto/GCGOperationAttack.proto b/protocol/proto/GCGOperationAttack.proto
index 7c776308..ba7ece0f 100644
--- a/protocol/proto/GCGOperationAttack.proto
+++ b/protocol/proto/GCGOperationAttack.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationAttack {
- repeated uint32 cost_dice_index_list = 8;
- uint32 skill_id = 2;
+ uint32 skill_id = 15;
+ repeated uint32 cost_dice_index_list = 3;
}
diff --git a/protocol/proto/GCGOperationOnStageSelect.proto b/protocol/proto/GCGOperationOnStageSelect.proto
index 5c23dae5..21f45de8 100644
--- a/protocol/proto/GCGOperationOnStageSelect.proto
+++ b/protocol/proto/GCGOperationOnStageSelect.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationOnStageSelect {
- uint32 card_guid = 5;
- repeated uint32 cost_dice_index_list = 4;
+ repeated uint32 cost_dice_index_list = 10;
+ uint32 card_guid = 6;
}
diff --git a/protocol/proto/GCGOperationPass.proto b/protocol/proto/GCGOperationPass.proto
index be154a09..1528ac33 100644
--- a/protocol/proto/GCGOperationPass.proto
+++ b/protocol/proto/GCGOperationPass.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationPass {}
diff --git a/protocol/proto/GCGOperationPlayCard.proto b/protocol/proto/GCGOperationPlayCard.proto
index 2669fff8..d2fdcd98 100644
--- a/protocol/proto/GCGOperationPlayCard.proto
+++ b/protocol/proto/GCGOperationPlayCard.proto
@@ -16,11 +16,11 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationPlayCard {
- uint32 card_guid = 12;
- repeated uint32 cost_dice_index_list = 4;
- repeated uint32 target_card_guid_list = 10;
+ uint32 replace_card_guid = 8;
+ repeated uint32 target_card_guid_list = 14;
+ uint32 card_guid = 1;
+ repeated uint32 cost_dice_index_list = 11;
}
diff --git a/protocol/proto/GCGOperationReboot.proto b/protocol/proto/GCGOperationReboot.proto
index 583208ce..b6e39a0b 100644
--- a/protocol/proto/GCGOperationReboot.proto
+++ b/protocol/proto/GCGOperationReboot.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationReboot {
- repeated uint32 cost_card_guid_list = 7;
- repeated uint32 dice_index_list = 6;
+ repeated uint32 dice_index_list = 2;
+ repeated uint32 cost_card_guid_list = 14;
}
diff --git a/protocol/proto/GCGOperationRedraw.proto b/protocol/proto/GCGOperationRedraw.proto
index e84e4df0..30a7bd1d 100644
--- a/protocol/proto/GCGOperationRedraw.proto
+++ b/protocol/proto/GCGOperationRedraw.proto
@@ -16,9 +16,8 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationRedraw {
- repeated uint32 card_list = 2;
+ repeated uint32 card_list = 7;
}
diff --git a/protocol/proto/GCGOperationReplay.proto b/protocol/proto/GCGOperationReplay.proto
index c279beaa..395609dc 100644
--- a/protocol/proto/GCGOperationReplay.proto
+++ b/protocol/proto/GCGOperationReplay.proto
@@ -16,13 +16,16 @@
syntax = "proto3";
-import "GCGOperationData.proto";
+import "GCGReplayControllerData.proto";
+import "GCGReplayOperationData.proto";
+import "Unk3300_PPKPCOCOMDH.proto";
-package proto;
option go_package = "./;proto";
message GCGOperationReplay {
- uint32 game_id = 1;
- uint32 seed = 11;
- repeated GCGOperationData operation_data_list = 9;
+ repeated Unk3300_PPKPCOCOMDH Unk3300_FKBLJIMBHEA = 6;
+ uint32 seed = 1;
+ repeated GCGReplayOperationData operation_data_list = 8;
+ uint32 game_id = 2;
+ repeated GCGReplayControllerData controller_data_list = 7;
}
diff --git a/protocol/proto/GCGOperationReq.proto b/protocol/proto/GCGOperationReq.proto
index 7cecb375..0fc49b1f 100644
--- a/protocol/proto/GCGOperationReq.proto
+++ b/protocol/proto/GCGOperationReq.proto
@@ -18,15 +18,19 @@ syntax = "proto3";
import "GCGOperation.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7107
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGOperationReq {
- uint32 op_seq = 2;
- uint32 redirect_uid = 7;
- GCGOperation op = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7664;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 redirect_uid = 12;
+ uint32 op_seq = 10;
+ GCGOperation op = 8;
}
diff --git a/protocol/proto/GCGOperationReroll.proto b/protocol/proto/GCGOperationReroll.proto
index 74804681..846628da 100644
--- a/protocol/proto/GCGOperationReroll.proto
+++ b/protocol/proto/GCGOperationReroll.proto
@@ -16,9 +16,8 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationReroll {
- repeated uint32 dice_index_list = 12;
+ repeated uint32 dice_index_list = 7;
}
diff --git a/protocol/proto/GCGOperationRsp.proto b/protocol/proto/GCGOperationRsp.proto
index ea6ff4aa..b86be2fd 100644
--- a/protocol/proto/GCGOperationRsp.proto
+++ b/protocol/proto/GCGOperationRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7600
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGOperationRsp {
- int32 retcode = 8;
- uint32 op_seq = 4;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7285;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 op_seq = 8;
+ int32 retcode = 7;
}
diff --git a/protocol/proto/GCGOperationSurrender.proto b/protocol/proto/GCGOperationSurrender.proto
index c941ad8a..c3dc25d4 100644
--- a/protocol/proto/GCGOperationSurrender.proto
+++ b/protocol/proto/GCGOperationSurrender.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGOperationSurrender {}
diff --git a/protocol/proto/GCGPVEIntention.proto b/protocol/proto/GCGPVEIntention.proto
index 92ed647e..a96a1662 100644
--- a/protocol/proto/GCGPVEIntention.proto
+++ b/protocol/proto/GCGPVEIntention.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGPVEIntention {
- uint32 card_guid = 9;
- repeated uint32 skill_id_list = 7;
+ repeated uint32 skill_id_list = 14;
+ uint32 card_guid = 15;
}
diff --git a/protocol/proto/GCGPhase.proto b/protocol/proto/GCGPhase.proto
index 8744dc22..205984a4 100644
--- a/protocol/proto/GCGPhase.proto
+++ b/protocol/proto/GCGPhase.proto
@@ -18,10 +18,9 @@ syntax = "proto3";
import "GCGPhaseType.proto";
-package proto;
option go_package = "./;proto";
message GCGPhase {
- GCGPhaseType phase_type = 5;
- map allow_controller_map = 6;
+ GCGPhaseType phase_type = 4;
+ map allow_controller_map = 12;
}
diff --git a/protocol/proto/GCGPhaseType.proto b/protocol/proto/GCGPhaseType.proto
index d494ba0a..fba694a1 100644
--- a/protocol/proto/GCGPhaseType.proto
+++ b/protocol/proto/GCGPhaseType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGPhaseType {
diff --git a/protocol/proto/GCGPlayCardCostInfo.proto b/protocol/proto/GCGPlayCardCostInfo.proto
index 679c6f07..609e7819 100644
--- a/protocol/proto/GCGPlayCardCostInfo.proto
+++ b/protocol/proto/GCGPlayCardCostInfo.proto
@@ -16,10 +16,11 @@
syntax = "proto3";
-package proto;
+import "Uint32Pair.proto";
+
option go_package = "./;proto";
message GCGPlayCardCostInfo {
- map cost_map = 14;
- uint32 card_id = 1;
+ uint32 card_id = 9;
+ repeated Uint32Pair cost_map = 12;
}
diff --git a/protocol/proto/GCGPlayerBriefData.proto b/protocol/proto/GCGPlayerBriefData.proto
index d2ed5726..40f2f917 100644
--- a/protocol/proto/GCGPlayerBriefData.proto
+++ b/protocol/proto/GCGPlayerBriefData.proto
@@ -18,14 +18,15 @@ syntax = "proto3";
import "ProfilePicture.proto";
-package proto;
option go_package = "./;proto";
message GCGPlayerBriefData {
- map card_face_map = 8;
- string nick_name = 9;
- ProfilePicture profile_picture = 12;
- repeated uint32 card_id_list = 3;
- uint32 controller_id = 5;
- uint32 uid = 10;
+ string online_id = 5;
+ uint32 uid = 9;
+ uint32 controller_id = 10;
+ ProfilePicture profile_picture = 11;
+ string nick_name = 1;
+ map card_face_map = 14;
+ repeated uint32 card_id_list = 13;
+ string psn_id = 2;
}
diff --git a/protocol/proto/GCGPlayerField.proto b/protocol/proto/GCGPlayerField.proto
index a264bd88..763d7914 100644
--- a/protocol/proto/GCGPlayerField.proto
+++ b/protocol/proto/GCGPlayerField.proto
@@ -21,25 +21,24 @@ import "GCGPVEIntention.proto";
import "GCGWaitingCharacter.proto";
import "GCGZone.proto";
-package proto;
option go_package = "./;proto";
message GCGPlayerField {
- map modify_zone_map = 2;
- uint32 cur_waiting_index = 383;
- GCGZone summon_zone = 1;
- uint32 field_show_id = 8;
- uint32 card_back_show_id = 12;
- uint32 dice_count = 3;
- uint32 controller_id = 10;
- GCGZone on_stage_zone = 14;
- bool is_passed = 7;
- GCGZone character_zone = 5;
- uint32 on_stage_character_guid = 6;
- GCGZone assist_zone = 15;
- uint32 deck_card_num = 13;
- repeated GCGDiceSideType dice_side_list = 11;
- GCGZone hand_zone = 9;
- repeated GCGPVEIntention intention_list = 1192;
- repeated GCGWaitingCharacter waiting_list = 4;
+ uint32 Unk3300_IKJMGAHCFPM = 5;
+ map modify_zone_map = 7;
+ uint32 Unk3300_GGHKFFADEAL = 731;
+ GCGZone Unk3300_AOPJIOHMPOF = 10;
+ uint32 Unk3300_FDFPHNDOJML = 12;
+ GCGZone Unk3300_IPLMHKCNDLE = 1;
+ GCGZone Unk3300_EIHOMDLENMK = 9;
+ repeated GCGWaitingCharacter waiting_list = 2;
+ uint32 Unk3300_PBECINKKHND = 15;
+ uint32 controller_id = 6;
+ GCGZone Unk3300_INDJNJJJNKL = 11;
+ GCGZone Unk3300_EFNAEFBECHD = 4;
+ bool is_passed = 8;
+ repeated GCGPVEIntention intention_list = 304;
+ repeated GCGDiceSideType dice_side_list = 13;
+ uint32 deck_card_num = 3;
+ uint32 Unk3300_GLNIFLOKBPM = 14;
}
diff --git a/protocol/proto/GCGPlayerGCGState.proto b/protocol/proto/GCGPlayerGCGState.proto
new file mode 100644
index 00000000..0a8b421b
--- /dev/null
+++ b/protocol/proto/GCGPlayerGCGState.proto
@@ -0,0 +1,25 @@
+// 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 go_package = "./;proto";
+
+message GCGPlayerGCGState {
+ uint32 uid = 14;
+ bool Unk3300_GIKOMFNNAAA = 11;
+ bool Unk3300_DEKGMKCCGEG = 4;
+}
diff --git a/protocol/proto/GCGReason.proto b/protocol/proto/GCGReason.proto
index cd8f96de..bcd21930 100644
--- a/protocol/proto/GCGReason.proto
+++ b/protocol/proto/GCGReason.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGReason {
@@ -30,4 +29,7 @@ enum GCGReason {
GCG_REASON_QUICKLY_ONSTAGE = 7;
GCG_REASON_REMOVE_AFTER_DIE = 8;
GCG_REASON_INIT = 9;
+ GCG_REASON_EFFECT_DAMAGE = 10;
+ GCG_REASON_EFFECT_HEAL = 11;
+ GCG_REASON_EFFECT_REVIVE = 12;
}
diff --git a/protocol/proto/GCGReplayControllerData.proto b/protocol/proto/GCGReplayControllerData.proto
new file mode 100644
index 00000000..24e1ddac
--- /dev/null
+++ b/protocol/proto/GCGReplayControllerData.proto
@@ -0,0 +1,24 @@
+// 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 go_package = "./;proto";
+
+message GCGReplayControllerData {
+ repeated uint32 card_id_list = 12;
+ uint32 controller_id = 6;
+}
diff --git a/protocol/proto/GCGReplayOperationData.proto b/protocol/proto/GCGReplayOperationData.proto
new file mode 100644
index 00000000..40264cb1
--- /dev/null
+++ b/protocol/proto/GCGReplayOperationData.proto
@@ -0,0 +1,26 @@
+// 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 "GCGOperation.proto";
+
+option go_package = "./;proto";
+
+message GCGReplayOperationData {
+ GCGOperation op = 1;
+ uint32 controller_id = 8;
+}
diff --git a/protocol/proto/GCGResourceStateNotify.proto b/protocol/proto/GCGResourceStateNotify.proto
index 8e657f6e..1f02d7f8 100644
--- a/protocol/proto/GCGResourceStateNotify.proto
+++ b/protocol/proto/GCGResourceStateNotify.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7876
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGResourceStateNotify {
- bool is_complete = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7586;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ bool is_complete = 12;
}
diff --git a/protocol/proto/GCGSelectOnStageCostInfo.proto b/protocol/proto/GCGSelectOnStageCostInfo.proto
index 25f4bce2..c33a1c4c 100644
--- a/protocol/proto/GCGSelectOnStageCostInfo.proto
+++ b/protocol/proto/GCGSelectOnStageCostInfo.proto
@@ -16,10 +16,11 @@
syntax = "proto3";
-package proto;
+import "Uint32Pair.proto";
+
option go_package = "./;proto";
message GCGSelectOnStageCostInfo {
- map cost_map = 8;
- uint32 card_guid = 9;
+ uint32 card_guid = 3;
+ repeated Uint32Pair cost_map = 1;
}
diff --git a/protocol/proto/GCGSettleNotify.proto b/protocol/proto/GCGSettleNotify.proto
index 4ab55e8d..bd434c11 100644
--- a/protocol/proto/GCGSettleNotify.proto
+++ b/protocol/proto/GCGSettleNotify.proto
@@ -20,17 +20,23 @@ import "GCGEndReason.proto";
import "GCGGameBusinessType.proto";
import "ItemParam.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7769
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGSettleNotify {
- uint32 game_id = 7;
- GCGGameBusinessType business_type = 2;
- bool is_win = 13;
- repeated ItemParam reward_item_list = 9;
- repeated uint32 finished_challenge_id_list = 6;
- GCGEndReason reason = 3;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7562;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated ItemParam reward_item_list = 8;
+ repeated uint32 finished_challenge_id_list = 1;
+ uint32 game_id = 3;
+ bool is_win = 2;
+ GCGGameBusinessType business_type = 5;
+ uint32 win_controller_id = 11;
+ repeated uint32 forbid_finish_challenge_list = 10;
+ GCGEndReason reason = 4;
}
diff --git a/protocol/proto/GCGSettleOption.proto b/protocol/proto/GCGSettleOption.proto
index aa181a01..02c58fa2 100644
--- a/protocol/proto/GCGSettleOption.proto
+++ b/protocol/proto/GCGSettleOption.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGSettleOption {
diff --git a/protocol/proto/GCGSettleOptionReq.proto b/protocol/proto/GCGSettleOptionReq.proto
index cf738b92..bc61e918 100644
--- a/protocol/proto/GCGSettleOptionReq.proto
+++ b/protocol/proto/GCGSettleOptionReq.proto
@@ -18,13 +18,17 @@ syntax = "proto3";
import "GCGSettleOption.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7124
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGSettleOptionReq {
- GCGSettleOption option = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7600;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ GCGSettleOption option = 9;
}
diff --git a/protocol/proto/GCGSettleOptionRsp.proto b/protocol/proto/GCGSettleOptionRsp.proto
index 855c8340..940ac860 100644
--- a/protocol/proto/GCGSettleOptionRsp.proto
+++ b/protocol/proto/GCGSettleOptionRsp.proto
@@ -18,13 +18,17 @@ syntax = "proto3";
import "GCGSettleOption.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7735
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGSettleOptionRsp {
- GCGSettleOption option = 13;
- int32 retcode = 14;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7110;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ GCGSettleOption option = 2;
+ int32 retcode = 5;
}
diff --git a/protocol/proto/GCGSkillHpChangeType.proto b/protocol/proto/GCGSkillHpChangeType.proto
index affdd924..2f1985b3 100644
--- a/protocol/proto/GCGSkillHpChangeType.proto
+++ b/protocol/proto/GCGSkillHpChangeType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGSkillHpChangeType {
diff --git a/protocol/proto/GCGSkillLimitsInfo.proto b/protocol/proto/GCGSkillLimitsInfo.proto
new file mode 100644
index 00000000..e30b50fa
--- /dev/null
+++ b/protocol/proto/GCGSkillLimitsInfo.proto
@@ -0,0 +1,26 @@
+// 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 "GCGLimitsInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGSkillLimitsInfo {
+ uint32 skill_id = 1;
+ repeated GCGLimitsInfo limits_list = 7;
+}
diff --git a/protocol/proto/GCGSkillPreviewAskReq.proto b/protocol/proto/GCGSkillPreviewAskReq.proto
index 86a5c5fc..198730fc 100644
--- a/protocol/proto/GCGSkillPreviewAskReq.proto
+++ b/protocol/proto/GCGSkillPreviewAskReq.proto
@@ -16,11 +16,15 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7509
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
-message GCGSkillPreviewAskReq {}
+message GCGSkillPreviewAskReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7858;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+}
diff --git a/protocol/proto/GCGSkillPreviewAskRsp.proto b/protocol/proto/GCGSkillPreviewAskRsp.proto
index d9280b65..be5d9d7e 100644
--- a/protocol/proto/GCGSkillPreviewAskRsp.proto
+++ b/protocol/proto/GCGSkillPreviewAskRsp.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7409
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGSkillPreviewAskRsp {
- int32 retcode = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7877;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 13;
}
diff --git a/protocol/proto/GCGSkillPreviewCardInfo.proto b/protocol/proto/GCGSkillPreviewCardInfo.proto
index a47ac660..f5bd67ba 100644
--- a/protocol/proto/GCGSkillPreviewCardInfo.proto
+++ b/protocol/proto/GCGSkillPreviewCardInfo.proto
@@ -18,13 +18,13 @@ syntax = "proto3";
import "GCGZoneType.proto";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewCardInfo {
- uint32 controller_id = 3;
- uint32 owner_card_guid = 11;
+ uint32 card_guid = 10;
+ uint32 face_type = 2;
+ uint32 controller_id = 11;
+ uint32 card_id = 8;
GCGZoneType zone_type = 14;
- uint32 card_id = 13;
- uint32 card_guid = 6;
+ uint32 owner_card_guid = 3;
}
diff --git a/protocol/proto/GCGSkillPreviewElementReactionInfo.proto b/protocol/proto/GCGSkillPreviewElementReactionInfo.proto
index c56905d8..74918669 100644
--- a/protocol/proto/GCGSkillPreviewElementReactionInfo.proto
+++ b/protocol/proto/GCGSkillPreviewElementReactionInfo.proto
@@ -18,11 +18,10 @@ syntax = "proto3";
import "GCGSkillPreviewReactionInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewElementReactionInfo {
- repeated uint32 fresh_list = 8;
- repeated uint32 source_list = 2;
- repeated GCGSkillPreviewReactionInfo reaction_list = 14;
+ repeated uint32 Unk3300_JOBNBDJHAPJ = 12;
+ repeated uint32 Unk3300_BELBNDNDGAO = 14;
+ repeated GCGSkillPreviewReactionInfo reaction_list = 1;
}
diff --git a/protocol/proto/GCGSkillPreviewExtraInfo.proto b/protocol/proto/GCGSkillPreviewExtraInfo.proto
new file mode 100644
index 00000000..6e79c513
--- /dev/null
+++ b/protocol/proto/GCGSkillPreviewExtraInfo.proto
@@ -0,0 +1,26 @@
+// 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 "GCGSkillPreviewCardInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGSkillPreviewExtraInfo {
+ repeated GCGSkillPreviewCardInfo Unk3300_KIFFJGFDNKA = 6;
+ repeated GCGSkillPreviewCardInfo Unk3300_GMEMMDJKCGN = 8;
+}
diff --git a/protocol/proto/GCGSkillPreviewHpInfo.proto b/protocol/proto/GCGSkillPreviewHpInfo.proto
index d1fb27cd..44451379 100644
--- a/protocol/proto/GCGSkillPreviewHpInfo.proto
+++ b/protocol/proto/GCGSkillPreviewHpInfo.proto
@@ -18,10 +18,9 @@ syntax = "proto3";
import "GCGSkillHpChangeType.proto";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewHpInfo {
- GCGSkillHpChangeType change_type = 4;
- uint32 hp_change_value = 13;
+ GCGSkillHpChangeType change_type = 8;
+ uint32 hp_change_value = 4;
}
diff --git a/protocol/proto/GCGSkillPreviewInfo.proto b/protocol/proto/GCGSkillPreviewInfo.proto
index e146551d..ba17e3f3 100644
--- a/protocol/proto/GCGSkillPreviewInfo.proto
+++ b/protocol/proto/GCGSkillPreviewInfo.proto
@@ -18,19 +18,20 @@ syntax = "proto3";
import "GCGSkillPreviewCardInfo.proto";
import "GCGSkillPreviewElementReactionInfo.proto";
+import "GCGSkillPreviewExtraInfo.proto";
import "GCGSkillPreviewHpInfo.proto";
import "GCGSkillPreviewOnstageChangeInfo.proto";
import "GCGSkillPreviewTokenChangeInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewInfo {
- repeated GCGSkillPreviewCardInfo rm_card_list = 12;
- map hp_info_map = 8;
- map reaction_info_map = 5;
- repeated GCGSkillPreviewOnstageChangeInfo change_onstage_character_list = 9;
- uint32 skill_id = 6;
- map card_token_change_map = 3;
- repeated GCGSkillPreviewCardInfo add_card_list = 11;
+ repeated GCGSkillPreviewOnstageChangeInfo change_onstage_character_list = 6;
+ repeated GCGSkillPreviewCardInfo Unk3300_DAJFJEDNLKK = 15;
+ uint32 skill_id = 12;
+ map hp_info_map = 3;
+ repeated GCGSkillPreviewCardInfo Unk3300_AGNONGELFGC = 2;
+ GCGSkillPreviewExtraInfo extra_info = 11;
+ map reaction_info_map = 14;
+ map card_token_change_map = 8;
}
diff --git a/protocol/proto/GCGSkillPreviewNotify.proto b/protocol/proto/GCGSkillPreviewNotify.proto
index 4dc0cd9b..150fd5ba 100644
--- a/protocol/proto/GCGSkillPreviewNotify.proto
+++ b/protocol/proto/GCGSkillPreviewNotify.proto
@@ -16,16 +16,24 @@
syntax = "proto3";
+import "GCGChangeOnstageInfo.proto";
import "GCGSkillPreviewInfo.proto";
+import "GCGSkillPreviewPlayCardInfo.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7503
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGSkillPreviewNotify {
- repeated GCGSkillPreviewInfo skill_preview_list = 9;
- uint32 onstage_card_guid = 5;
- uint32 controller_id = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7659;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 controller_id = 13;
+ repeated GCGSkillPreviewInfo skill_preview_list = 15;
+ repeated GCGChangeOnstageInfo change_onstage_preview_list = 3;
+ repeated GCGSkillPreviewPlayCardInfo play_card_list = 11;
+ uint32 onstage_card_guid = 6;
}
diff --git a/protocol/proto/GCGSkillPreviewOnstageChangeInfo.proto b/protocol/proto/GCGSkillPreviewOnstageChangeInfo.proto
index 9526452f..32862130 100644
--- a/protocol/proto/GCGSkillPreviewOnstageChangeInfo.proto
+++ b/protocol/proto/GCGSkillPreviewOnstageChangeInfo.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewOnstageChangeInfo {
- uint32 target_onstage_card_guid = 6;
- uint32 source_onstage_card_guid = 15;
+ uint32 Unk3300_EHHDPPFDIFB = 8;
+ uint32 Unk3300_BALADGFAPKL = 14;
}
diff --git a/protocol/proto/GCGSkillPreviewPlayCardInfo.proto b/protocol/proto/GCGSkillPreviewPlayCardInfo.proto
new file mode 100644
index 00000000..ed09d722
--- /dev/null
+++ b/protocol/proto/GCGSkillPreviewPlayCardInfo.proto
@@ -0,0 +1,27 @@
+// 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 "GCGSkillPreviewInfo.proto";
+
+option go_package = "./;proto";
+
+message GCGSkillPreviewPlayCardInfo {
+ uint32 hand_card_guid = 15;
+ GCGSkillPreviewInfo play_card_info = 10;
+ uint32 target_card_guid = 8;
+}
diff --git a/protocol/proto/GCGSkillPreviewReactionInfo.proto b/protocol/proto/GCGSkillPreviewReactionInfo.proto
index 042e7f5e..945b838d 100644
--- a/protocol/proto/GCGSkillPreviewReactionInfo.proto
+++ b/protocol/proto/GCGSkillPreviewReactionInfo.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewReactionInfo {
- uint32 source_element = 13;
- uint32 target_element = 1;
+ uint32 Unk3300_AENPLEDPMJH = 3;
+ uint32 Unk3300_PDEHPHJFAKD = 2;
}
diff --git a/protocol/proto/GCGSkillPreviewTokenChangeInfo.proto b/protocol/proto/GCGSkillPreviewTokenChangeInfo.proto
index 5a3fddd5..0b19382e 100644
--- a/protocol/proto/GCGSkillPreviewTokenChangeInfo.proto
+++ b/protocol/proto/GCGSkillPreviewTokenChangeInfo.proto
@@ -18,9 +18,8 @@ syntax = "proto3";
import "GCGSkillPreviewTokenInfo.proto";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewTokenChangeInfo {
- repeated GCGSkillPreviewTokenInfo token_change_list = 14;
+ repeated GCGSkillPreviewTokenInfo token_change_list = 10;
}
diff --git a/protocol/proto/GCGSkillPreviewTokenInfo.proto b/protocol/proto/GCGSkillPreviewTokenInfo.proto
index b0b52f7f..a9095721 100644
--- a/protocol/proto/GCGSkillPreviewTokenInfo.proto
+++ b/protocol/proto/GCGSkillPreviewTokenInfo.proto
@@ -16,11 +16,10 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGSkillPreviewTokenInfo {
- uint32 token_type = 3;
- uint32 after_value = 12;
- uint32 before_value = 15;
+ uint32 token_type = 11;
+ uint32 Unk3300_MMIKPPJMHAD = 10;
+ uint32 Unk3300_IKICJMEFEON = 3;
}
diff --git a/protocol/proto/GCGStartChallengeByCheckRewardReq.proto b/protocol/proto/GCGStartChallengeByCheckRewardReq.proto
new file mode 100644
index 00000000..72cea95e
--- /dev/null
+++ b/protocol/proto/GCGStartChallengeByCheckRewardReq.proto
@@ -0,0 +1,36 @@
+// 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 "GCGLevelType.proto";
+
+option go_package = "./;proto";
+
+message GCGStartChallengeByCheckRewardReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7982;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 level_id = 13;
+ GCGLevelType level_type = 3;
+ uint32 config_id = 5;
+}
diff --git a/protocol/proto/GCGStartChallengeByCheckRewardRsp.proto b/protocol/proto/GCGStartChallengeByCheckRewardRsp.proto
new file mode 100644
index 00000000..c7bd26e5
--- /dev/null
+++ b/protocol/proto/GCGStartChallengeByCheckRewardRsp.proto
@@ -0,0 +1,38 @@
+// 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 "GCGLevelType.proto";
+
+option go_package = "./;proto";
+
+message GCGStartChallengeByCheckRewardRsp {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7727;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated uint32 exceeded_item_type_list = 3;
+ uint32 level_id = 5;
+ repeated uint32 exceeded_item_list = 8;
+ GCGLevelType level_type = 2;
+ uint32 config_id = 9;
+ int32 retcode = 12;
+}
diff --git a/protocol/proto/GCGStartChallengeReq.proto b/protocol/proto/GCGStartChallengeReq.proto
index 9afcaab1..8c0125f3 100644
--- a/protocol/proto/GCGStartChallengeReq.proto
+++ b/protocol/proto/GCGStartChallengeReq.proto
@@ -18,15 +18,19 @@ syntax = "proto3";
import "GCGLevelType.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7595
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGStartChallengeReq {
- GCGLevelType level_type = 5;
- uint32 config_id = 13;
- uint32 level_id = 12;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7964;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ GCGLevelType level_type = 12;
+ uint32 config_id = 7;
+ uint32 level_id = 2;
}
diff --git a/protocol/proto/GCGStartChallengeRsp.proto b/protocol/proto/GCGStartChallengeRsp.proto
index f9c9e43e..0a09ead4 100644
--- a/protocol/proto/GCGStartChallengeRsp.proto
+++ b/protocol/proto/GCGStartChallengeRsp.proto
@@ -18,15 +18,19 @@ syntax = "proto3";
import "GCGLevelType.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7763
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGStartChallengeRsp {
- GCGLevelType level_type = 12;
- int32 retcode = 15;
- uint32 config_id = 6;
- uint32 level_id = 1;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7999;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 config_id = 8;
+ uint32 level_id = 5;
+ GCGLevelType level_type = 11;
+ int32 retcode = 1;
}
diff --git a/protocol/proto/GCGTCInviteReq.proto b/protocol/proto/GCGTCInviteReq.proto
index 195973c9..ab5ac00b 100644
--- a/protocol/proto/GCGTCInviteReq.proto
+++ b/protocol/proto/GCGTCInviteReq.proto
@@ -16,14 +16,18 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7922
-// EnetChannelId: 0
-// EnetIsReliable: true
-// IsAllowClient: true
message GCGTCInviteReq {
- uint32 level_id = 3;
- uint32 character_id = 6;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7341;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+
+ uint32 character_id = 8;
+ uint32 level_id = 11;
}
diff --git a/protocol/proto/GCGTCInviteRsp.proto b/protocol/proto/GCGTCInviteRsp.proto
index 74ae0bfd..396d9fad 100644
--- a/protocol/proto/GCGTCInviteRsp.proto
+++ b/protocol/proto/GCGTCInviteRsp.proto
@@ -16,13 +16,17 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7328
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGTCInviteRsp {
- uint32 character_id = 12;
- int32 retcode = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7027;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 character_id = 9;
+ int32 retcode = 11;
}
diff --git a/protocol/proto/GCGTCTavernChallengeData.proto b/protocol/proto/GCGTCTavernChallengeData.proto
index 0ce3e012..cb74bdcd 100644
--- a/protocol/proto/GCGTCTavernChallengeData.proto
+++ b/protocol/proto/GCGTCTavernChallengeData.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGTCTavernChallengeData {
- repeated uint32 unlock_level_id_list = 1;
- uint32 character_id = 8;
+ repeated uint32 unlock_level_id_list = 13;
+ uint32 character_id = 4;
}
diff --git a/protocol/proto/GCGTCTavernChallengeDataNotify.proto b/protocol/proto/GCGTCTavernChallengeDataNotify.proto
index c6a57278..daae2132 100644
--- a/protocol/proto/GCGTCTavernChallengeDataNotify.proto
+++ b/protocol/proto/GCGTCTavernChallengeDataNotify.proto
@@ -18,12 +18,16 @@ syntax = "proto3";
import "GCGTCTavernChallengeData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7294
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGTCTavernChallengeDataNotify {
- repeated GCGTCTavernChallengeData tavern_challenge_list = 13;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7356;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated GCGTCTavernChallengeData tavern_challenge_list = 5;
}
diff --git a/protocol/proto/GCGTCTavernChallengeUpdateNotify.proto b/protocol/proto/GCGTCTavernChallengeUpdateNotify.proto
index 9bb3eec3..ad788697 100644
--- a/protocol/proto/GCGTCTavernChallengeUpdateNotify.proto
+++ b/protocol/proto/GCGTCTavernChallengeUpdateNotify.proto
@@ -18,12 +18,16 @@ syntax = "proto3";
import "GCGTCTavernChallengeData.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7184
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGTCTavernChallengeUpdateNotify {
- GCGTCTavernChallengeData tavern_challenge = 5;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7907;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ GCGTCTavernChallengeData tavern_challenge = 12;
}
diff --git a/protocol/proto/GCGTCTavernInfoNotify.proto b/protocol/proto/GCGTCTavernInfoNotify.proto
index 82307896..87d9708b 100644
--- a/protocol/proto/GCGTCTavernInfoNotify.proto
+++ b/protocol/proto/GCGTCTavernInfoNotify.proto
@@ -16,18 +16,22 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7011
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGTCTavernInfoNotify {
- bool is_last_duel_win = 14;
- uint32 level_id = 11;
- bool is_owner_in_duel = 5;
- uint32 point_id = 3;
- uint32 avatar_id = 12;
- uint32 character_id = 7;
- uint32 element_type = 10;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7268;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ uint32 level_id = 5;
+ bool Unk3300_IMFJBNFMCHM = 11;
+ bool Unk3300_MBGMHBNBKBK = 8;
+ uint32 point_id = 4;
+ uint32 element_type = 6;
+ uint32 avatar_id = 9;
+ uint32 character_id = 12;
}
diff --git a/protocol/proto/GCGTavernNpcInfo.proto b/protocol/proto/GCGTavernNpcInfo.proto
index c9b66597..a87dc6ee 100644
--- a/protocol/proto/GCGTavernNpcInfo.proto
+++ b/protocol/proto/GCGTavernNpcInfo.proto
@@ -16,11 +16,10 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGTavernNpcInfo {
- uint32 id = 6;
- uint32 level_id = 10;
- uint32 scene_point_id = 3;
+ uint32 id = 9;
+ uint32 scene_point_id = 15;
+ uint32 level_id = 6;
}
diff --git a/protocol/proto/GCGTavernNpcInfoNotify.proto b/protocol/proto/GCGTavernNpcInfoNotify.proto
index 4bda1ee0..b1db4ddc 100644
--- a/protocol/proto/GCGTavernNpcInfoNotify.proto
+++ b/protocol/proto/GCGTavernNpcInfoNotify.proto
@@ -18,14 +18,18 @@ syntax = "proto3";
import "GCGTavernNpcInfo.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7290
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGTavernNpcInfoNotify {
- repeated GCGTavernNpcInfo week_npc_list = 1;
- GCGTavernNpcInfo character_npc = 5;
- repeated GCGTavernNpcInfo const_npc_list = 15;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7267;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated GCGTavernNpcInfo Unk3300_FKAKHMMIEBC = 12;
+ repeated GCGTavernNpcInfo Unk3300_BAMLNENDLCM = 2;
+ GCGTavernNpcInfo character_npc = 11;
}
diff --git a/protocol/proto/GCGToken.proto b/protocol/proto/GCGToken.proto
index f1d60b61..d39a3236 100644
--- a/protocol/proto/GCGToken.proto
+++ b/protocol/proto/GCGToken.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGToken {
- uint32 value = 11;
+ uint32 value = 14;
uint32 key = 4;
}
diff --git a/protocol/proto/GCGWaitingCharacter.proto b/protocol/proto/GCGWaitingCharacter.proto
index 90319667..3ac862b2 100644
--- a/protocol/proto/GCGWaitingCharacter.proto
+++ b/protocol/proto/GCGWaitingCharacter.proto
@@ -16,10 +16,9 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGWaitingCharacter {
- uint32 card_id = 2;
- uint32 cond_count = 14;
+ uint32 cond_count = 1;
+ uint32 card_id = 11;
}
diff --git a/protocol/proto/GCGWeekChallengeInfo.proto b/protocol/proto/GCGWeekChallengeInfo.proto
index 811419f8..cddae4b5 100644
--- a/protocol/proto/GCGWeekChallengeInfo.proto
+++ b/protocol/proto/GCGWeekChallengeInfo.proto
@@ -16,11 +16,10 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGWeekChallengeInfo {
- uint32 npc_id = 4;
- bool is_finished = 7;
- uint32 unlock_time = 1;
+ uint32 npc_id = 9;
+ uint32 unlock_time = 8;
+ bool is_finished = 12;
}
diff --git a/protocol/proto/GCGWeekChallengeInfoNotify.proto b/protocol/proto/GCGWeekChallengeInfoNotify.proto
index 9b258650..f45148b9 100644
--- a/protocol/proto/GCGWeekChallengeInfoNotify.proto
+++ b/protocol/proto/GCGWeekChallengeInfoNotify.proto
@@ -18,13 +18,18 @@ syntax = "proto3";
import "GCGWeekChallengeInfo.proto";
-package proto;
option go_package = "./;proto";
-// CmdId: 7615
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGWeekChallengeInfoNotify {
- repeated GCGWeekChallengeInfo challenge_info_list = 15;
- uint32 next_refresh_time = 7;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7058;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated GCGWeekChallengeInfo challenge_info_list = 3;
+ uint32 next_refresh_time = 4;
+ bool is_notify_npc_change = 7;
}
diff --git a/protocol/proto/GCGWorldChallengeUnlockNotify.proto b/protocol/proto/GCGWorldChallengeUnlockNotify.proto
index c2c906b0..e9aee1ed 100644
--- a/protocol/proto/GCGWorldChallengeUnlockNotify.proto
+++ b/protocol/proto/GCGWorldChallengeUnlockNotify.proto
@@ -16,12 +16,16 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
-// CmdId: 7204
-// EnetChannelId: 0
-// EnetIsReliable: true
message GCGWorldChallengeUnlockNotify {
- repeated uint32 unlock_id_list = 8;
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7370;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ repeated uint32 unlock_id_list = 6;
}
diff --git a/protocol/proto/GCGWorldPlayerGCGStateReq.proto b/protocol/proto/GCGWorldPlayerGCGStateReq.proto
new file mode 100644
index 00000000..cd15e89e
--- /dev/null
+++ b/protocol/proto/GCGWorldPlayerGCGStateReq.proto
@@ -0,0 +1,30 @@
+// 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 go_package = "./;proto";
+
+message GCGWorldPlayerGCGStateReq {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7375;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // IS_ALLOW_CLIENT = 1;
+ // }
+}
diff --git a/protocol/proto/GCGWorldPlayerGCGStateRsp.proto b/protocol/proto/GCGWorldPlayerGCGStateRsp.proto
new file mode 100644
index 00000000..dac2e221
--- /dev/null
+++ b/protocol/proto/GCGWorldPlayerGCGStateRsp.proto
@@ -0,0 +1,34 @@
+// 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 "GCGPlayerGCGState.proto";
+
+option go_package = "./;proto";
+
+message GCGWorldPlayerGCGStateRsp {
+ // enum CmdId {
+ // option allow_alias = true;
+ // NONE = 0;
+ // CMD_ID = 7248;
+ // ENET_CHANNEL_ID = 0;
+ // ENET_IS_RELIABLE = 1;
+ // }
+
+ int32 retcode = 15;
+ repeated GCGPlayerGCGState player_state = 2;
+}
diff --git a/protocol/proto/GCGZone.proto b/protocol/proto/GCGZone.proto
index 3f5ca7fd..5229ee09 100644
--- a/protocol/proto/GCGZone.proto
+++ b/protocol/proto/GCGZone.proto
@@ -16,9 +16,8 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
message GCGZone {
- repeated uint32 card_list = 4;
+ repeated uint32 card_list = 11;
}
diff --git a/protocol/proto/GCGZoneType.proto b/protocol/proto/GCGZoneType.proto
index 260c0cde..9e76acd9 100644
--- a/protocol/proto/GCGZoneType.proto
+++ b/protocol/proto/GCGZoneType.proto
@@ -16,7 +16,6 @@
syntax = "proto3";
-package proto;
option go_package = "./;proto";
enum GCGZoneType {
diff --git a/protocol/proto/Unk3300_ADHENCIFKNI.proto b/protocol/proto/Unk3300_ADHENCIFKNI.proto
new file mode 100644
index 00000000..b7edfa96
--- /dev/null
+++ b/protocol/proto/Unk3300_ADHENCIFKNI.proto
@@ -0,0 +1,25 @@
+// 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 go_package = "./;proto";
+
+message Unk3300_ADHENCIFKNI {
+ uint64 begin_time = 6;
+ uint64 time_stamp = 13;
+ uint32 controller_id = 10;
+}
diff --git a/protocol/proto/Unk3300_PPKPCOCOMDH.proto b/protocol/proto/Unk3300_PPKPCOCOMDH.proto
new file mode 100644
index 00000000..5b304b4c
--- /dev/null
+++ b/protocol/proto/Unk3300_PPKPCOCOMDH.proto
@@ -0,0 +1,30 @@
+// 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 "GCGDuel.proto";
+
+option go_package = "./;proto";
+
+message Unk3300_PPKPCOCOMDH {
+ uint32 controller_id = 12;
+ uint32 op_seq = 13;
+ oneof detail {
+ string gm_msg = 2;
+ GCGDuel duel = 14;
+ }
+}