From 42b66453fb7aac0085fdf412f550370014dcfed2 Mon Sep 17 00:00:00 2001 From: flswld Date: Fri, 3 Mar 2023 17:02:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gate/net/kcp_connect_manager.go | 2 +- gs/game/lua_func.go | 13 ++++++++++++- gs/game/player_avatar.go | 3 --- gs/game/player_chat.go | 5 ----- gs/game/player_common.go | 14 ++++---------- gs/game/player_costume.go | 1 - gs/game/player_equip.go | 3 --- gs/game/player_fight_sync.go | 21 +++++++-------------- gs/game/player_flycloak.go | 1 - gs/game/player_gacha.go | 2 -- gs/game/player_map.go | 8 ++------ gs/game/player_multiplayer.go | 7 ------- gs/game/player_quest.go | 2 +- gs/game/player_scene.go | 24 ++++++++++++++---------- gs/game/player_shop.go | 6 ------ gs/game/player_social.go | 16 ---------------- gs/game/player_team.go | 4 ---- gs/game/player_weapon.go | 4 ---- gs/game/world_manager.go | 6 +++--- 19 files changed, 44 insertions(+), 98 deletions(-) diff --git a/gate/net/kcp_connect_manager.go b/gate/net/kcp_connect_manager.go index 96e02c3f..0f0df549 100644 --- a/gate/net/kcp_connect_manager.go +++ b/gate/net/kcp_connect_manager.go @@ -23,7 +23,7 @@ import ( const ( ConnSynPacketFreqLimit = 100 // 连接建立握手包每秒发包频率限制 - RecvPacketFreqLimit = 200 // 客户端上行每秒发包频率限制 + RecvPacketFreqLimit = 1000 // 客户端上行每秒发包频率限制 SendPacketFreqLimit = 1000 // 服务器下行每秒发包频率限制 PacketMaxLen = 343 * 1024 // 最大应用层包长度 ConnRecvTimeout = 30 // 收包超时时间 秒 diff --git a/gs/game/lua_func.go b/gs/game/lua_func.go index 4c01a7fe..51187664 100644 --- a/gs/game/lua_func.go +++ b/gs/game/lua_func.go @@ -72,6 +72,7 @@ func CallLuaFunc(luaState *lua.LState, luaFuncName string, luaCtx *LuaCtx, luaEv func RegLuaLibFunc() { gdconf.RegScriptLibFunc("GetEntityType", GetEntityType) gdconf.RegScriptLibFunc("GetQuestState", GetQuestState) + gdconf.RegScriptLibFunc("PrintLog", PrintLog) gdconf.RegScriptLibFunc("PrintContextLog", PrintContextLog) gdconf.RegScriptLibFunc("BeginCameraSceneLook", BeginCameraSceneLook) } @@ -103,10 +104,20 @@ func GetQuestState(luaState *lua.LState) int { questId := luaState.ToInt(3) dbQuest := player.GetDbQuest() quest := dbQuest.GetQuestById(uint32(questId)) + if quest == nil { + luaState.Push(lua.LNumber(constant.QUEST_STATE_NONE)) + return 1 + } luaState.Push(lua.LNumber(quest.State)) return 1 } +func PrintLog(luaState *lua.LState) int { + logInfo := luaState.ToString(1) + logger.Info("[LUA LOG] %v", logInfo) + return 0 +} + func PrintContextLog(luaState *lua.LState) int { ctx, ok := luaState.Get(1).(*lua.LTable) if !ok { @@ -117,7 +128,7 @@ func PrintContextLog(luaState *lua.LState) int { return 0 } logInfo := luaState.ToString(2) - logger.Info("[LUA LOG] %v [UID %v]", logInfo, uid) + logger.Info("[LUA CTX LOG] %v [UID %v]", logInfo, uid) return 0 } diff --git a/gs/game/player_avatar.go b/gs/game/player_avatar.go index 6fb6c25c..e7ec2774 100644 --- a/gs/game/player_avatar.go +++ b/gs/game/player_avatar.go @@ -71,7 +71,6 @@ func (g *GameManager) AddUserAvatar(userId uint32, avatarId uint32) { // AvatarPromoteGetRewardReq 角色突破获取奖励请求 func (g *GameManager) AvatarPromoteGetRewardReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user promote get reward, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AvatarPromoteGetRewardReq) // 是否拥有角色 avatar, ok := player.GameObjectGuidMap[req.AvatarGuid].(*model.Avatar) @@ -122,7 +121,6 @@ func (g *GameManager) AvatarPromoteGetRewardReq(player *model.Player, payloadMsg // AvatarPromoteReq 角色突破请求 func (g *GameManager) AvatarPromoteReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user promote, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AvatarPromoteReq) // 是否拥有角色 avatar, ok := player.GameObjectGuidMap[req.Guid].(*model.Avatar) @@ -209,7 +207,6 @@ func (g *GameManager) AvatarPromoteReq(player *model.Player, payloadMsg pb.Messa // AvatarUpgradeReq 角色升级请求 func (g *GameManager) AvatarUpgradeReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user upgrade, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AvatarUpgradeReq) // 是否拥有角色 avatar, ok := player.GameObjectGuidMap[req.AvatarGuid].(*model.Avatar) diff --git a/gs/game/player_chat.go b/gs/game/player_chat.go index 41895f5f..6cfb2b7f 100644 --- a/gs/game/player_chat.go +++ b/gs/game/player_chat.go @@ -17,7 +17,6 @@ const ( ) func (g *GameManager) PullRecentChatReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user pull recent chat, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PullRecentChatReq) // 经研究发现 原神现网环境 客户端仅拉取最新的5条未读聊天消息 所以人太多的话小姐姐不回你消息是有原因的 // 因此 阿米你这样做真的合适吗 不过现在代码到了我手上我想怎么写就怎么写 我才不会重蹈覆辙 @@ -57,7 +56,6 @@ func (g *GameManager) PullRecentChatReq(player *model.Player, payloadMsg pb.Mess } func (g *GameManager) PullPrivateChatReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user pull private chat, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PullPrivateChatReq) targetUid := req.TargetUid pullNum := req.PullNum @@ -173,7 +171,6 @@ func (g *GameManager) SendPrivateChat(player *model.Player, targetUid uint32, co } func (g *GameManager) PrivateChatReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user send private chat, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PrivateChatReq) targetUid := req.TargetUid content := req.Content @@ -202,7 +199,6 @@ func (g *GameManager) PrivateChatReq(player *model.Player, payloadMsg pb.Message } func (g *GameManager) ReadPrivateChatReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user read private chat, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ReadPrivateChatReq) targetUid := req.TargetUid @@ -223,7 +219,6 @@ func (g *GameManager) ReadPrivateChatReq(player *model.Player, payloadMsg pb.Mes } func (g *GameManager) PlayerChatReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user multiplayer chat, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PlayerChatReq) channelId := req.ChannelId chatInfo := req.ChatInfo diff --git a/gs/game/player_common.go b/gs/game/player_common.go index c5164add..94bee090 100644 --- a/gs/game/player_common.go +++ b/gs/game/player_common.go @@ -14,7 +14,6 @@ import ( ) func (g *GameManager) PlayerSetPauseReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user pause, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PlayerSetPauseReq) isPaused := req.IsPaused player.Pause = isPaused @@ -23,8 +22,6 @@ func (g *GameManager) PlayerSetPauseReq(player *model.Player, payloadMsg pb.Mess } func (g *GameManager) TowerAllDataReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get tower all data, uid: %v", player.PlayerID) - towerAllDataRsp := &proto.TowerAllDataRsp{ TowerScheduleId: 29, TowerFloorRecordList: []*proto.TowerFloorRecord{{FloorId: 1001}}, @@ -42,7 +39,6 @@ func (g *GameManager) TowerAllDataReq(player *model.Player, payloadMsg pb.Messag } func (g *GameManager) QueryPathReq(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user query path, uid: %v", player.PlayerID) req := payloadMsg.(*proto.QueryPathReq) queryPathRsp := &proto.QueryPathRsp{ @@ -54,7 +50,6 @@ func (g *GameManager) QueryPathReq(player *model.Player, payloadMsg pb.Message) } func (g *GameManager) EntityAiSyncNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user entity ai sync, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EntityAiSyncNotify) entityAiSyncNotify := &proto.EntityAiSyncNotify{ @@ -86,7 +81,6 @@ func (g *GameManager) ClientTimeNotify(userId uint32, clientTime uint32) { logger.Error("player is nil, uid: %v", userId) return } - logger.Debug("client time notify, uid: %v, time: %v", userId, clientTime) player.ClientTime = clientTime now := time.Now().Unix() // 客户端与服务器时间相差太过严重 @@ -123,14 +117,14 @@ func (g *GameManager) ServerAnnounceRevokeNotify(announceId uint32) { } func (g *GameManager) ToTheMoonEnterSceneReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user ttm enter scene, uid: %v", player.PlayerID) + logger.Debug("player ttm enter scene, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ToTheMoonEnterSceneReq) _ = req g.SendMsg(cmd.ToTheMoonEnterSceneRsp, player.PlayerID, player.ClientSeq, new(proto.ToTheMoonEnterSceneRsp)) } func (g *GameManager) PathfindingEnterSceneReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user pf enter scene, uid: %v", player.PlayerID) + logger.Debug("player pf enter scene, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PathfindingEnterSceneReq) _ = req g.SendMsg(cmd.PathfindingEnterSceneRsp, player.PlayerID, player.ClientSeq, new(proto.PathfindingEnterSceneRsp)) @@ -178,7 +172,7 @@ func (g *GameManager) ServerAppidBindNotify(userId uint32, fightAppId string, jo } func (g *GameManager) ObstacleModifyNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user obstacle modify, uid: %v", player.PlayerID) ntf := payloadMsg.(*proto.ObstacleModifyNotify) - logger.Debug("ObstacleModifyNotify: %v", ntf) + _ = ntf + // logger.Debug("ObstacleModifyNotify: %v, uid: %v", ntf, player.PlayerID) } diff --git a/gs/game/player_costume.go b/gs/game/player_costume.go index 77f1b5af..117d3c59 100644 --- a/gs/game/player_costume.go +++ b/gs/game/player_costume.go @@ -33,7 +33,6 @@ func (g *GameManager) AddUserCostume(userId uint32, costumeId uint32) { // AvatarChangeCostumeReq 角色更换时装请求 func (g *GameManager) AvatarChangeCostumeReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change avatar costume, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AvatarChangeCostumeReq) world := WORLD_MANAGER.GetWorldByID(player.WorldId) diff --git a/gs/game/player_equip.go b/gs/game/player_equip.go index bee32dba..e1ae9a34 100644 --- a/gs/game/player_equip.go +++ b/gs/game/player_equip.go @@ -13,7 +13,6 @@ import ( // SetEquipLockStateReq 设置装备上锁状态请求 func (g *GameManager) SetEquipLockStateReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user set equip lock, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetEquipLockStateReq) // 获取目标装备 @@ -49,7 +48,6 @@ func (g *GameManager) SetEquipLockStateReq(player *model.Player, payloadMsg pb.M // TakeoffEquipReq 装备卸下请求 func (g *GameManager) TakeoffEquipReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user take off equip, uid: %v", player.PlayerID) req := payloadMsg.(*proto.TakeoffEquipReq) // 获取目标角色 @@ -84,7 +82,6 @@ func (g *GameManager) TakeoffEquipReq(player *model.Player, payloadMsg pb.Messag // WearEquipReq 穿戴装备请求 func (g *GameManager) WearEquipReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user wear equip, uid: %v", player.PlayerID) req := payloadMsg.(*proto.WearEquipReq) // 获取目标角色 diff --git a/gs/game/player_fight_sync.go b/gs/game/player_fight_sync.go index 352f94a1..29d237c0 100644 --- a/gs/game/player_fight_sync.go +++ b/gs/game/player_fight_sync.go @@ -64,7 +64,6 @@ func DoForward[IET model.InvokeEntryType](player *model.Player, req pb.Message, } func (g *GameManager) UnionCmdNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user send union cmd, uid: %v", player.PlayerID) req := payloadMsg.(*proto.UnionCmdNotify) _ = req if player.SceneLoadState != model.SceneEnterDone { @@ -77,7 +76,6 @@ func (g *GameManager) UnionCmdNotify(player *model.Player, payloadMsg pb.Message } func (g *GameManager) MassiveEntityElementOpBatchNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user meeo sync, uid: %v", player.PlayerID) req := payloadMsg.(*proto.MassiveEntityElementOpBatchNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -98,7 +96,6 @@ func (g *GameManager) MassiveEntityElementOpBatchNotify(player *model.Player, pa } func (g *GameManager) CombatInvocationsNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user combat invocations, uid: %v", player.PlayerID) req := payloadMsg.(*proto.CombatInvocationsNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -254,7 +251,7 @@ func (g *GameManager) CombatInvocationsNotify(player *model.Player, payloadMsg p logger.Error("parse EvtAnimatorParameterInfo error: %v", err) continue } - logger.Debug("EvtAnimatorParameterInfo: %v, ForwardType: %v", evtAnimatorParameterInfo, entry.ForwardType) + // logger.Debug("EvtAnimatorParameterInfo: %v, ForwardType: %v", evtAnimatorParameterInfo, entry.ForwardType) // 这是否? if evtAnimatorParameterInfo.IsServerCache { @@ -312,6 +309,9 @@ func (g *GameManager) AoiPlayerMove(player *model.Player, oldPos *model.Vector, if distance2D > ENTITY_LOD { continue } + if group.DynamicLoad { + continue + } oldVisionGroupMap[uint32(groupId)] = group } // 新位置视野范围内的group @@ -323,6 +323,9 @@ func (g *GameManager) AoiPlayerMove(player *model.Player, oldPos *model.Vector, if distance2D > ENTITY_LOD { continue } + if group.DynamicLoad { + continue + } newVisionGroupMap[uint32(groupId)] = group } // 消失的场景实体 @@ -505,7 +508,6 @@ func (g *GameManager) TriggerFire(dbQuest *model.DbQuest, trigger *gdconf.Trigge } func (g *GameManager) AbilityInvocationsNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user ability invocations, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AbilityInvocationsNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -545,7 +547,6 @@ func (g *GameManager) AbilityInvocationsNotify(player *model.Player, payloadMsg } func (g *GameManager) ClientAbilityInitFinishNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user client ability init finish, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ClientAbilityInitFinishNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -559,7 +560,6 @@ func (g *GameManager) ClientAbilityInitFinishNotify(player *model.Player, payloa } func (g *GameManager) ClientAbilityChangeNotify(player *model.Player, payloadMsg pb.Message) { - // logger.Debug("user client ability change, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ClientAbilityChangeNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -656,7 +656,6 @@ func (g *GameManager) ClientAbilityChangeNotify(player *model.Player, payloadMsg } func (g *GameManager) EvtDoSkillSuccNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user event do skill success, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtDoSkillSuccNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -668,7 +667,6 @@ func (g *GameManager) EvtDoSkillSuccNotify(player *model.Player, payloadMsg pb.M } func (g *GameManager) EvtAvatarEnterFocusNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user avatar enter focus, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtAvatarEnterFocusNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -679,7 +677,6 @@ func (g *GameManager) EvtAvatarEnterFocusNotify(player *model.Player, payloadMsg } func (g *GameManager) EvtAvatarUpdateFocusNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user avatar update focus, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtAvatarUpdateFocusNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -690,7 +687,6 @@ func (g *GameManager) EvtAvatarUpdateFocusNotify(player *model.Player, payloadMs } func (g *GameManager) EvtAvatarExitFocusNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user avatar exit focus, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtAvatarExitFocusNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -701,7 +697,6 @@ func (g *GameManager) EvtAvatarExitFocusNotify(player *model.Player, payloadMsg } func (g *GameManager) EvtEntityRenderersChangedNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user entity render change, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtEntityRenderersChangedNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -712,7 +707,6 @@ func (g *GameManager) EvtEntityRenderersChangedNotify(player *model.Player, payl } func (g *GameManager) EvtCreateGadgetNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user create gadget, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtCreateGadgetNotify) if player.SceneLoadState != model.SceneEnterDone { return @@ -737,7 +731,6 @@ func (g *GameManager) EvtCreateGadgetNotify(player *model.Player, payloadMsg pb. } func (g *GameManager) EvtDestroyGadgetNotify(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user destroy gadget, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EvtDestroyGadgetNotify) if player.SceneLoadState != model.SceneEnterDone { return diff --git a/gs/game/player_flycloak.go b/gs/game/player_flycloak.go index 20c465a3..01679fe0 100644 --- a/gs/game/player_flycloak.go +++ b/gs/game/player_flycloak.go @@ -33,7 +33,6 @@ func (g *GameManager) AddUserFlycloak(userId uint32, flyCloakId uint32) { // AvatarWearFlycloakReq 角色装备风之翼请求 func (g *GameManager) AvatarWearFlycloakReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change avatar fly cloak, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AvatarWearFlycloakReq) world := WORLD_MANAGER.GetWorldByID(player.WorldId) diff --git a/gs/game/player_gacha.go b/gs/game/player_gacha.go index 11287490..1a1a8a2b 100644 --- a/gs/game/player_gacha.go +++ b/gs/game/player_gacha.go @@ -22,7 +22,6 @@ type UserInfo struct { // 获取卡池信息 func (g *GameManager) GetGachaInfoReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get gacha info, uid: %v", player.PlayerID) serverAddr := config.GetConfig().Hk4e.GachaHistoryServer userInfo := &UserInfo{ UserId: player.PlayerID, @@ -195,7 +194,6 @@ func (g *GameManager) GetGachaInfoReq(player *model.Player, payloadMsg pb.Messag } func (g *GameManager) DoGachaReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user do gacha, uid: %v", player.PlayerID) req := payloadMsg.(*proto.DoGachaReq) gachaScheduleId := req.GachaScheduleId gachaTimes := req.GachaTimes diff --git a/gs/game/player_map.go b/gs/game/player_map.go index de0362be..c10fdd59 100644 --- a/gs/game/player_map.go +++ b/gs/game/player_map.go @@ -13,7 +13,6 @@ import ( ) func (g *GameManager) SceneTransToPointReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get scene trans to point, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SceneTransToPointReq) pointDataConfig := gdconf.GetScenePointBySceneIdAndPointId(int32(req.SceneId), int32(req.PointId)) @@ -42,12 +41,11 @@ func (g *GameManager) SceneTransToPointReq(player *model.Player, payloadMsg pb.M } func (g *GameManager) MarkMapReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user mark map, uid: %v", player.PlayerID) req := payloadMsg.(*proto.MarkMapReq) operation := req.Op if operation == proto.MarkMapReq_ADD { logger.Debug("user mark type: %v", req.Mark.PointType) - if req.Mark.PointType == proto.MapMarkPointType_MONSTER { + if req.Mark.PointType == proto.MapMarkPointType_NPC { posYInt, err := strconv.ParseInt(req.Mark.Name, 10, 64) if err != nil { logger.Error("parse pos y error: %v", err) @@ -126,7 +124,6 @@ func (g *GameManager) TeleportPlayer(player *model.Player, enterReason uint16, s } func (g *GameManager) GetScenePointReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get scene point, uid: %v", player.PlayerID) req := payloadMsg.(*proto.GetScenePointReq) scenePointMapConfig := gdconf.GetScenePointMapBySceneId(int32(req.SceneId)) @@ -158,7 +155,6 @@ func (g *GameManager) GetScenePointReq(player *model.Player, payloadMsg pb.Messa } func (g *GameManager) GetSceneAreaReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get scene area, uid: %v", player.PlayerID) req := payloadMsg.(*proto.GetSceneAreaReq) getSceneAreaRsp := &proto.GetSceneAreaRsp{ @@ -191,7 +187,7 @@ func (g *GameManager) GetSceneAreaReq(player *model.Player, payloadMsg pb.Messag } func (g *GameManager) EnterWorldAreaReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user enter world area, uid: %v", player.PlayerID) + logger.Debug("player enter world area, uid: %v", player.PlayerID) req := payloadMsg.(*proto.EnterWorldAreaReq) logger.Debug("EnterWorldAreaReq: %v", req) diff --git a/gs/game/player_multiplayer.go b/gs/game/player_multiplayer.go index bc88d247..b93db295 100644 --- a/gs/game/player_multiplayer.go +++ b/gs/game/player_multiplayer.go @@ -17,7 +17,6 @@ import ( // 进入世界 func (g *GameManager) PlayerApplyEnterMpReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user apply enter world, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PlayerApplyEnterMpReq) targetUid := req.TargetUid @@ -30,7 +29,6 @@ func (g *GameManager) PlayerApplyEnterMpReq(player *model.Player, payloadMsg pb. } func (g *GameManager) PlayerApplyEnterMpResultReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user deal world enter apply, uid: %v", player.PlayerID) req := payloadMsg.(*proto.PlayerApplyEnterMpResultReq) applyUid := req.ApplyUid isAgreed := req.IsAgreed @@ -45,7 +43,6 @@ func (g *GameManager) PlayerApplyEnterMpResultReq(player *model.Player, payloadM } func (g *GameManager) JoinPlayerSceneReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user join player scene, uid: %v", player.PlayerID) req := payloadMsg.(*proto.JoinPlayerSceneReq) joinPlayerSceneRsp := new(proto.JoinPlayerSceneRsp) @@ -100,7 +97,6 @@ func (g *GameManager) JoinOtherWorld(player *model.Player, hostPlayer *model.Pla // 退出世界 func (g *GameManager) PlayerGetForceQuitBanInfoReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get world exit ban info, uid: %v", player.PlayerID) ok := true world := WORLD_MANAGER.GetWorldByID(player.WorldId) for _, worldPlayer := range world.GetAllPlayer() { @@ -117,7 +113,6 @@ func (g *GameManager) PlayerGetForceQuitBanInfoReq(player *model.Player, payload } func (g *GameManager) BackMyWorldReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user back world, uid: %v", player.PlayerID) // 其他玩家 ok := g.UserLeaveWorld(player) @@ -129,7 +124,6 @@ func (g *GameManager) BackMyWorldReq(player *model.Player, payloadMsg pb.Message } func (g *GameManager) ChangeWorldToSingleModeReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change world to single, uid: %v", player.PlayerID) // 房主 ok := g.UserLeaveWorld(player) @@ -141,7 +135,6 @@ func (g *GameManager) ChangeWorldToSingleModeReq(player *model.Player, payloadMs } func (g *GameManager) SceneKickPlayerReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user kick player, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SceneKickPlayerReq) world := WORLD_MANAGER.GetWorldByID(player.WorldId) if player.PlayerID != world.GetOwner().PlayerID { diff --git a/gs/game/player_quest.go b/gs/game/player_quest.go index 507027cb..64dec239 100644 --- a/gs/game/player_quest.go +++ b/gs/game/player_quest.go @@ -14,7 +14,7 @@ import ( // AddQuestContentProgressReq 添加任务内容进度请求 func (g *GameManager) AddQuestContentProgressReq(player *model.Player, payloadMsg pb.Message) { req := payloadMsg.(*proto.AddQuestContentProgressReq) - logger.Error("AddQuestContentProgressReq: %v", req) + logger.Debug("AddQuestContentProgressReq: %v", req) g.AddQuestProgress(player, req) diff --git a/gs/game/player_scene.go b/gs/game/player_scene.go index 77c60642..3cafe23e 100644 --- a/gs/game/player_scene.go +++ b/gs/game/player_scene.go @@ -19,11 +19,11 @@ import ( const ( ENTITY_MAX_BATCH_SEND_NUM = 1000 // 单次同步的最大实体数量 - ENTITY_LOD = 100 // 实体加载视野距离 + ENTITY_LOD = 300 // 实体加载视野距离 ) func (g *GameManager) EnterSceneReadyReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user enter scene ready, uid: %v", player.PlayerID) + logger.Debug("player enter scene ready, uid: %v", player.PlayerID) world := WORLD_MANAGER.GetWorldByID(player.WorldId) enterScenePeerNotify := &proto.EnterScenePeerNotify{ @@ -41,7 +41,7 @@ func (g *GameManager) EnterSceneReadyReq(player *model.Player, payloadMsg pb.Mes } func (g *GameManager) SceneInitFinishReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user scene init finish, uid: %v", player.PlayerID) + logger.Debug("player scene init finish, uid: %v", player.PlayerID) world := WORLD_MANAGER.GetWorldByID(player.WorldId) scene := world.GetSceneById(player.SceneId) if scene == nil { @@ -243,7 +243,7 @@ func (g *GameManager) SceneInitFinishReq(player *model.Player, payloadMsg pb.Mes } func (g *GameManager) EnterSceneDoneReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user enter scene done, uid: %v", player.PlayerID) + logger.Debug("player enter scene done, uid: %v", player.PlayerID) world := WORLD_MANAGER.GetWorldByID(player.WorldId) scene := world.GetSceneById(player.SceneId) if scene == nil { @@ -279,6 +279,9 @@ func (g *GameManager) EnterSceneDoneReq(player *model.Player, payloadMsg pb.Mess if distance2D > ENTITY_LOD { continue } + if group.DynamicLoad { + continue + } for _, monster := range group.MonsterList { g.CreateConfigEntity(scene, monster.ObjectId, monster) } @@ -332,7 +335,7 @@ func (g *GameManager) EnterSceneDoneReq(player *model.Player, payloadMsg pb.Mess } func (g *GameManager) PostEnterSceneReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user post enter scene, uid: %v", player.PlayerID) + logger.Debug("player post enter scene, uid: %v", player.PlayerID) postEnterSceneRsp := &proto.PostEnterSceneRsp{ EnterSceneToken: player.EnterSceneToken, @@ -341,7 +344,6 @@ func (g *GameManager) PostEnterSceneReq(player *model.Player, payloadMsg pb.Mess } func (g *GameManager) ChangeGameTimeReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change game time, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ChangeGameTimeReq) gameTime := req.GameTime world := WORLD_MANAGER.GetWorldByID(player.WorldId) @@ -370,11 +372,13 @@ func (g *GameManager) ChangeGameTimeReq(player *model.Player, payloadMsg pb.Mess func (g *GameManager) SceneEntityDrownReq(player *model.Player, payloadMsg pb.Message) { req := payloadMsg.(*proto.SceneEntityDrownReq) - logger.Error("entity drown, entityId: %v", req.EntityId) + world := WORLD_MANAGER.GetWorldByID(player.WorldId) + scene := world.GetSceneById(player.SceneId) + scene.DestroyEntity(req.EntityId) - // PacketSceneEntityDrownRsp - sceneEntityDrownRsp := new(proto.SceneEntityDrownRsp) - sceneEntityDrownRsp.EntityId = req.EntityId + sceneEntityDrownRsp := &proto.SceneEntityDrownRsp{ + EntityId: req.EntityId, + } g.SendMsg(cmd.SceneEntityDrownRsp, player.PlayerID, player.ClientSeq, sceneEntityDrownRsp) } diff --git a/gs/game/player_shop.go b/gs/game/player_shop.go index 0eb6d15b..1bcfc395 100644 --- a/gs/game/player_shop.go +++ b/gs/game/player_shop.go @@ -4,7 +4,6 @@ import ( "time" "hk4e/gs/model" - "hk4e/pkg/logger" "hk4e/protocol/cmd" "hk4e/protocol/proto" @@ -12,8 +11,6 @@ import ( ) func (g *GameManager) GetShopmallDataReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get shop mall, uid: %v", player.PlayerID) - getShopmallDataRsp := &proto.GetShopmallDataRsp{ ShopTypeList: []uint32{900, 1052, 902, 1001, 903}, } @@ -21,7 +18,6 @@ func (g *GameManager) GetShopmallDataReq(player *model.Player, payloadMsg pb.Mes } func (g *GameManager) GetShopReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get shop, uid: %v", player.PlayerID) req := payloadMsg.(*proto.GetShopReq) shopType := req.ShopType @@ -69,7 +65,6 @@ func (g *GameManager) GetShopReq(player *model.Player, payloadMsg pb.Message) { } func (g *GameManager) BuyGoodsReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user buy goods, uid: %v", player.PlayerID) req := payloadMsg.(*proto.BuyGoodsReq) buyItemId := req.Goods.GoodsItem.ItemId buyItemCount := req.BuyCount @@ -103,7 +98,6 @@ func (g *GameManager) BuyGoodsReq(player *model.Player, payloadMsg pb.Message) { } func (g *GameManager) McoinExchangeHcoinReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user mcoin exchange hcoin, uid: %v", player.PlayerID) req := payloadMsg.(*proto.McoinExchangeHcoinReq) if req.Hcoin != req.McoinCost { return diff --git a/gs/game/player_social.go b/gs/game/player_social.go index 35468e13..d26a680d 100644 --- a/gs/game/player_social.go +++ b/gs/game/player_social.go @@ -17,7 +17,6 @@ import ( ) func (g *GameManager) GetPlayerSocialDetailReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get player social detail, uid: %v", player.PlayerID) req := payloadMsg.(*proto.GetPlayerSocialDetailReq) targetUid := req.Uid @@ -47,7 +46,6 @@ func (g *GameManager) GetPlayerSocialDetailReq(player *model.Player, payloadMsg } func (g *GameManager) SetPlayerBirthdayReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user set birthday, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetPlayerBirthdayReq) if player.Birthday[0] != 0 || player.Birthday[1] != 0 { g.SendError(cmd.SetPlayerBirthdayRsp, player, &proto.SetPlayerBirthdayRsp{}) @@ -64,7 +62,6 @@ func (g *GameManager) SetPlayerBirthdayReq(player *model.Player, payloadMsg pb.M } func (g *GameManager) SetNameCardReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change name card, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetNameCardReq) nameCardId := req.NameCardId exist := false @@ -86,7 +83,6 @@ func (g *GameManager) SetNameCardReq(player *model.Player, payloadMsg pb.Message } func (g *GameManager) SetPlayerSignatureReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change signature, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetPlayerSignatureReq) signature := req.Signature @@ -103,7 +99,6 @@ func (g *GameManager) SetPlayerSignatureReq(player *model.Player, payloadMsg pb. } func (g *GameManager) SetPlayerNameReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change nickname, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetPlayerNameReq) nickName := req.NickName @@ -124,7 +119,6 @@ func (g *GameManager) SetPlayerNameReq(player *model.Player, payloadMsg pb.Messa } func (g *GameManager) SetPlayerHeadImageReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change head image, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetPlayerHeadImageReq) avatarId := req.AvatarId dbAvatar := player.GetDbAvatar() @@ -142,8 +136,6 @@ func (g *GameManager) SetPlayerHeadImageReq(player *model.Player, payloadMsg pb. } func (g *GameManager) GetAllUnlockNameCardReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get all unlock name card, uid: %v", player.PlayerID) - getAllUnlockNameCardRsp := &proto.GetAllUnlockNameCardRsp{ NameCardList: player.NameCardList, } @@ -151,7 +143,6 @@ func (g *GameManager) GetAllUnlockNameCardReq(player *model.Player, payloadMsg p } func (g *GameManager) GetPlayerFriendListReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get friend list, uid: %v", player.PlayerID) getPlayerFriendListRsp := &proto.GetPlayerFriendListRsp{ FriendList: make([]*proto.FriendBrief, 0), } @@ -193,8 +184,6 @@ func (g *GameManager) GetPlayerFriendListReq(player *model.Player, payloadMsg pb } func (g *GameManager) GetPlayerAskFriendListReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get friend apply list, uid: %v", player.PlayerID) - getPlayerAskFriendListRsp := &proto.GetPlayerAskFriendListRsp{ AskFriendList: make([]*proto.FriendBrief, 0), } @@ -231,7 +220,6 @@ func (g *GameManager) GetPlayerAskFriendListReq(player *model.Player, payloadMsg } func (g *GameManager) AskAddFriendReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user apply add friend, uid: %v", player.PlayerID) req := payloadMsg.(*proto.AskAddFriendReq) targetUid := req.TargetUid @@ -318,7 +306,6 @@ func (g *GameManager) AskAddFriendReq(player *model.Player, payloadMsg pb.Messag } func (g *GameManager) DealAddFriendReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user deal friend apply, uid: %v", player.PlayerID) req := payloadMsg.(*proto.DealAddFriendReq) targetUid := req.TargetUid result := req.DealAddFriendResult @@ -378,8 +365,6 @@ func (g *GameManager) DealAddFriendReq(player *model.Player, payloadMsg pb.Messa } func (g *GameManager) GetOnlinePlayerListReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get online player list, uid: %v", player.PlayerID) - count := 0 getOnlinePlayerListRsp := &proto.GetOnlinePlayerListRsp{ PlayerInfoList: make([]*proto.OnlinePlayerInfo, 0), @@ -432,7 +417,6 @@ func (g *GameManager) GetOnlinePlayerListReq(player *model.Player, payloadMsg pb } func (g *GameManager) GetOnlinePlayerInfoReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user get online player info, uid: %v", player.PlayerID) req := payloadMsg.(*proto.GetOnlinePlayerInfoReq) targetUid, ok := req.PlayerId.(*proto.GetOnlinePlayerInfoReq_TargetUid) if !ok { diff --git a/gs/game/player_team.go b/gs/game/player_team.go index cd6c4cc5..0ff432e1 100644 --- a/gs/game/player_team.go +++ b/gs/game/player_team.go @@ -13,7 +13,6 @@ import ( ) func (g *GameManager) ChangeAvatarReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change avatar, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ChangeAvatarReq) targetAvatarGuid := req.Guid world := WORLD_MANAGER.GetWorldByID(player.WorldId) @@ -77,7 +76,6 @@ func (g *GameManager) ChangeAvatarReq(player *model.Player, payloadMsg pb.Messag } func (g *GameManager) SetUpAvatarTeamReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change team avatar, uid: %v", player.PlayerID) req := payloadMsg.(*proto.SetUpAvatarTeamReq) world := WORLD_MANAGER.GetWorldByID(player.WorldId) if world.GetMultiplayer() { @@ -152,7 +150,6 @@ func (g *GameManager) SetUpAvatarTeamReq(player *model.Player, payloadMsg pb.Mes } func (g *GameManager) ChooseCurAvatarTeamReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user switch team, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ChooseCurAvatarTeamReq) teamId := req.TeamId world := WORLD_MANAGER.GetWorldByID(player.WorldId) @@ -183,7 +180,6 @@ func (g *GameManager) ChooseCurAvatarTeamReq(player *model.Player, payloadMsg pb } func (g *GameManager) ChangeMpTeamAvatarReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user change mp team avatar, uid: %v", player.PlayerID) req := payloadMsg.(*proto.ChangeMpTeamAvatarReq) avatarGuidList := req.AvatarGuidList world := WORLD_MANAGER.GetWorldByID(player.WorldId) diff --git a/gs/game/player_weapon.go b/gs/game/player_weapon.go index 8c545644..b9711a55 100644 --- a/gs/game/player_weapon.go +++ b/gs/game/player_weapon.go @@ -116,7 +116,6 @@ func (g *GameManager) PacketStoreItemChangeNotifyByWeapon(weapon *model.Weapon) // WeaponAwakenReq 武器精炼请求 func (g *GameManager) WeaponAwakenReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user weapon awaken, uid: %v", player.PlayerID) req := payloadMsg.(*proto.WeaponAwakenReq) // 确保精炼的武器与精炼材料不是同一个 if req.TargetWeaponGuid == req.ItemGuid { @@ -282,7 +281,6 @@ func (g *GameManager) WeaponAwakenReq(player *model.Player, payloadMsg pb.Messag // WeaponPromoteReq 武器突破请求 func (g *GameManager) WeaponPromoteReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user weapon promote, uid: %v", player.PlayerID) req := payloadMsg.(*proto.WeaponPromoteReq) // 是否拥有武器 weapon, ok := player.GameObjectGuidMap[req.TargetWeaponGuid].(*model.Weapon) @@ -552,7 +550,6 @@ func (g *GameManager) CalcWeaponUpgrade(weapon *model.Weapon, expCount uint32) ( // WeaponUpgradeReq 武器升级请求 func (g *GameManager) WeaponUpgradeReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user weapon upgrade, uid: %v", player.PlayerID) req := payloadMsg.(*proto.WeaponUpgradeReq) // 是否拥有武器 weapon, ok := player.GameObjectGuidMap[req.TargetWeaponGuid].(*model.Weapon) @@ -689,7 +686,6 @@ func (g *GameManager) WeaponUpgradeReq(player *model.Player, payloadMsg pb.Messa // CalcWeaponUpgradeReturnItemsReq 计算武器升级返回矿石请求 func (g *GameManager) CalcWeaponUpgradeReturnItemsReq(player *model.Player, payloadMsg pb.Message) { - logger.Debug("user calc weapon upgrade, uid: %v", player.PlayerID) req := payloadMsg.(*proto.CalcWeaponUpgradeReturnItemsReq) // 是否拥有武器 weapon, ok := player.GameObjectGuidMap[req.TargetWeaponGuid].(*model.Weapon) diff --git a/gs/game/world_manager.go b/gs/game/world_manager.go index dcc9cd37..8bb5345c 100644 --- a/gs/game/world_manager.go +++ b/gs/game/world_manager.go @@ -14,9 +14,9 @@ import ( // 世界管理器 const ( - ENTITY_NUM_UNLIMIT = false // 是否不限制场景内实体数量 - ENTITY_MAX_SEND_NUM = 500 // 场景内最大实体数量 - MAX_MULTIPLAYER_WORLD_NUM = 10 // 本服务器最大多人世界数量 + ENTITY_NUM_UNLIMIT = true // 是否不限制场景内实体数量 + ENTITY_MAX_SEND_NUM = 500 // 场景内最大实体数量 + MAX_MULTIPLAYER_WORLD_NUM = 10 // 本服务器最大多人世界数量 ) type WorldManager struct {