From 5619c56552e28ff391b4dc28c23921d8753e4df7 Mon Sep 17 00:00:00 2001 From: xeon Date: Tue, 20 Feb 2024 21:55:17 +0300 Subject: [PATCH] Fix monsters, fix map, some adjustments --- GameServer/Controllers/CreatureController.cs | 3 +- .../Controllers/ExploreProgressController.cs | 4 +- .../Controllers/FriendSystemController.cs | 2 +- GameServer/Controllers/LoginController.cs | 2 +- .../Controllers/PlayerInfoController.cs | 32 ++-- GameServer/Controllers/RoleController.cs | 148 +++++++++++++++++- GameServer/Controllers/RouletteController.cs | 4 +- .../Entity/Component/EntityFsmComponent.cs | 4 +- GameServer/gameplay.json | 8 +- Protocol/MessageId.cs | 2 + Protocol/message.proto | 20 +++ 11 files changed, 204 insertions(+), 25 deletions(-) diff --git a/GameServer/Controllers/CreatureController.cs b/GameServer/Controllers/CreatureController.cs index 1c2ed54..8011bb7 100644 --- a/GameServer/Controllers/CreatureController.cs +++ b/GameServer/Controllers/CreatureController.cs @@ -52,7 +52,8 @@ internal class CreatureController : Controller _entitySystem.Activate(entity); response = new EntityActiveResponse { - ErrorCode = (int)ErrorCode.Success + ErrorCode = (int)ErrorCode.Success, + IsVisible = entity.IsVisible }; response.ComponentPbs.AddRange(entity.ComponentSystem.Pb); diff --git a/GameServer/Controllers/ExploreProgressController.cs b/GameServer/Controllers/ExploreProgressController.cs index f2da234..8470978 100644 --- a/GameServer/Controllers/ExploreProgressController.cs +++ b/GameServer/Controllers/ExploreProgressController.cs @@ -7,8 +7,8 @@ namespace GameServer.Controllers; internal class ExploreProgressController : Controller { private static readonly int[] s_areaIds = [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 100, 101, 102, 103, 107, 110, 113, 124, 122, 199, 301, 302, 303, 401, 402, 403, 404, 405, 406, 407, 408, 708, 601, 602, 603, 606, 607, 608, 609, 202, 203, 204, 501, 502, 503, 504, 508, 802, 803, 805, 807, 702, 703, 704, 705, 706, 709, 1201, 1202, 1203, 1204, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1301, 119, 120, 10001, 10002, 10003, 10004, 10005, 11001, 12001, 12002, 12003, 1500001, 1500002, 14001, 14002, 14003, 14004, 14005, 14006, 14007, 14008, 14011, 14012, 14013, 14021, 14022, 123, 125, 51, 804]; - private static readonly (int, int)[] s_exploreIds = [(1, 2), (2, 2), (3, 2), (10, 3), (11, 4), (12, 4), (13, 4), (21, 6), (22, 6), (23, 6), (24, 6), (31, 8), (32, 8), (33, 8), (34, 8), (41, 10), (42, 10), (43, 10), (44, 10), (51, 12), (52, 12), (53, 12), (54, 12), (6, 3), (7, 3), (8, 3), (9, 3), (14, 4), (15, 4), (16, 5), (17, 5), (18, 5), (19, 5), (25, 6), (26, 7), (27, 7), (28, 7), (29, 7), (45, 10), (55, 12), (4, 2), (5, 2), (20, 5), (30, 7), (35, 8)]; - + private static readonly (int, int)[] s_exploreIds = [(1, 2), (2, 2), (3, 2), (11, 4), (12, 4), (13, 4), (21, 6), (22, 6), (23, 6), (24, 6), (31, 8), (32, 8), (33, 8), (34, 8), (41, 10), (42, 10), (43, 10), (44, 10), (51, 12), (52, 12), (53, 12), (54, 12), (6, 3), (7, 3), (8, 3), (9, 3), (14, 4), (15, 4), (16, 5), (17, 5), (18, 5), (19, 5), (25, 6), (26, 7), (27, 7), (28, 7), (29, 7), (45, 10), (55, 12), (4, 2), (5, 2), (20, 5), (30, 7), (35, 8)]; + public ExploreProgressController(PlayerSession session) : base(session) { // ExploreProgressController. diff --git a/GameServer/Controllers/FriendSystemController.cs b/GameServer/Controllers/FriendSystemController.cs index c83fa56..8c96be3 100644 --- a/GameServer/Controllers/FriendSystemController.cs +++ b/GameServer/Controllers/FriendSystemController.cs @@ -16,7 +16,7 @@ internal class FriendSystemController : Controller { FriendInfoList = { - CreateDummyFriendInfo(1338, "Taoqi", "discord.gg/reversedrooms", 1601) + CreateDummyFriendInfo(1338, "Yangyang", "discord.gg/reversedrooms", 1402) } }); diff --git a/GameServer/Controllers/LoginController.cs b/GameServer/Controllers/LoginController.cs index 2fff24c..0e6f5b8 100644 --- a/GameServer/Controllers/LoginController.cs +++ b/GameServer/Controllers/LoginController.cs @@ -21,7 +21,7 @@ internal class LoginController : Controller return Response(MessageId.LoginResponse, new LoginResponse { Code = 0, - Platform = "PC", + Platform = "CBT3_EU", Timestamp = DateTimeOffset.Now.ToUnixTimeSeconds() }); } diff --git a/GameServer/Controllers/PlayerInfoController.cs b/GameServer/Controllers/PlayerInfoController.cs index 54f8479..2181043 100644 --- a/GameServer/Controllers/PlayerInfoController.cs +++ b/GameServer/Controllers/PlayerInfoController.cs @@ -41,19 +41,27 @@ internal class PlayerInfoController : Controller { Key = (int)PlayerAttrKey.HeadPhoto, ValueType = (int)PlayerAttrType.Int32, - Int32Value = 1601 + Int32Value = 1402 + } + }, + RoleShowList = + { + new RoleShowEntry + { + Level = 1, + RoleId = 1501 // Rover + } + }, + CurCardId = 80060000, + CardUnlockList = + { + new CardShowEntry + { + CardId = 80060000, + IsRead = true } } }; - - for (int i = 0; i < player.Characters.Length; i++) - { - basicInfo.RoleShowList.Add(new RoleShowEntry - { - Level = 1, - RoleId = player.Characters[i] - }); - } await Session.Push(MessageId.BasicInfoNotify, basicInfo); } @@ -65,9 +73,9 @@ internal class PlayerInfoController : Controller { Info = new PlayerDetails { - Name = "Taoqi", + Name = "Yangyang", Signature = "discord.gg/reversedrooms", - HeadId = 1601, + HeadId = 1402, PlayerId = 1338, IsOnline = true, LastOfflineTime = -1, diff --git a/GameServer/Controllers/RoleController.cs b/GameServer/Controllers/RoleController.cs index 150354c..98b4c4b 100644 --- a/GameServer/Controllers/RoleController.cs +++ b/GameServer/Controllers/RoleController.cs @@ -28,7 +28,8 @@ internal class RoleController : Controller .Select(config => new roleInfo { RoleId = config.Id, - Level = 1 + Level = 1, + BaseProp = { CreateBasePropList(configManager.GetConfig(config.Id)) } }) } }); @@ -46,4 +47,149 @@ internal class RoleController : Controller [NetEvent(MessageId.RoleFavorListRequest)] public ResponseMessage OnRoleFavorListRequest() => Response(MessageId.RoleFavorListResponse, new RoleFavorListResponse()); + + private static List CreateBasePropList(BasePropertyConfig? config) + { + List baseProp = []; + if (config == null) return baseProp; + + baseProp.Add(new() { Key = (int)EAttributeType.Lv, Value = config.Lv}); + baseProp.Add(new() { Key = (int)EAttributeType.LifeMax, Value = config.LifeMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Life, Value = config.Life}); + baseProp.Add(new() { Key = (int)EAttributeType.Sheild, Value = config.Sheild}); + baseProp.Add(new() { Key = (int)EAttributeType.SheildDamageChange, Value = config.SheildDamageChange}); + baseProp.Add(new() { Key = (int)EAttributeType.SheildDamageReduce, Value = config.SheildDamageReduce}); + baseProp.Add(new() { Key = (int)EAttributeType.Atk, Value = config.Atk}); + baseProp.Add(new() { Key = (int)EAttributeType.Crit, Value = config.Crit}); + baseProp.Add(new() { Key = (int)EAttributeType.CritDamage, Value = config.CritDamage}); + baseProp.Add(new() { Key = (int)EAttributeType.Def, Value = config.Def}); + baseProp.Add(new() { Key = (int)EAttributeType.EnergyEfficiency, Value = config.EnergyEfficiency}); + baseProp.Add(new() { Key = (int)EAttributeType.CdReduse, Value = config.CdReduse}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionEfficiency, Value = config.ReactionEfficiency}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeNormalSkill, Value = config.DamageChangeNormalSkill}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChange, Value = config.DamageChange}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduce, Value = config.DamageReduce}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeAuto, Value = config.DamageChangeAuto}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeCast, Value = config.DamageChangeCast}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeUltra, Value = config.DamageChangeUltra}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeQte, Value = config.DamageChangeQte}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangePhys, Value = config.DamageChangePhys}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement1, Value = config.DamageChangeElement1}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement2, Value = config.DamageChangeElement2}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement3, Value = config.DamageChangeElement3}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement4, Value = config.DamageChangeElement4}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement5, Value = config.DamageChangeElement5}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangeElement6, Value = config.DamageChangeElement6}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistancePhys, Value = config.DamageResistancePhys}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement1, Value = config.DamageResistanceElement1}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement2, Value = config.DamageResistanceElement2}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement3, Value = config.DamageResistanceElement3}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement4, Value = config.DamageResistanceElement4}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement5, Value = config.DamageResistanceElement5}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageResistanceElement6, Value = config.DamageResistanceElement6}); + baseProp.Add(new() { Key = (int)EAttributeType.HealChange, Value = config.HealChange}); + baseProp.Add(new() { Key = (int)EAttributeType.HealedChange, Value = config.HealedChange}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReducePhys, Value = config.DamageReducePhys}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement1, Value = config.DamageReduceElement1}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement2, Value = config.DamageReduceElement2}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement3, Value = config.DamageReduceElement3}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement4, Value = config.DamageReduceElement4}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement5, Value = config.DamageReduceElement5}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageReduceElement6, Value = config.DamageReduceElement6}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange1, Value = config.ReactionChange1}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange2, Value = config.ReactionChange2}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange3, Value = config.ReactionChange3}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange4, Value = config.ReactionChange4}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange5, Value = config.ReactionChange5}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange6, Value = config.ReactionChange6}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange7, Value = config.ReactionChange7}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange8, Value = config.ReactionChange8}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange9, Value = config.ReactionChange9}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange10, Value = config.ReactionChange10}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange11, Value = config.ReactionChange11}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange12, Value = config.ReactionChange12}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange13, Value = config.ReactionChange13}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange14, Value = config.ReactionChange14}); + baseProp.Add(new() { Key = (int)EAttributeType.ReactionChange15, Value = config.ReactionChange15}); + baseProp.Add(new() { Key = (int)EAttributeType.EnergyMax, Value = config.EnergyMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Energy, Value = config.Energy}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy1Max, Value = config.SpecialEnergy1Max}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy1, Value = config.SpecialEnergy1}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy2Max, Value = config.SpecialEnergy2Max}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy2, Value = config.SpecialEnergy2}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy3Max, Value = config.SpecialEnergy3Max}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy3, Value = config.SpecialEnergy3}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy4Max, Value = config.SpecialEnergy4Max}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialEnergy4, Value = config.SpecialEnergy4}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthMax, Value = config.StrengthMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Strength, Value = config.Strength}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthRecover, Value = config.StrengthRecover}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthPunishTime, Value = config.StrengthPunishTime}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthRun, Value = config.StrengthRun}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthSwim, Value = config.StrengthSwim}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthFastSwim, Value = config.StrengthFastSwim}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthClimb, Value = config.StrengthClimb}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthFastClimb, Value = config.StrengthFastClimb}); + baseProp.Add(new() { Key = (int)EAttributeType.HardnessMax, Value = config.HardnessMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Hardness, Value = config.Hardness}); + baseProp.Add(new() { Key = (int)EAttributeType.HardnessRecover, Value = config.HardnessRecover}); + baseProp.Add(new() { Key = (int)EAttributeType.HardnessPunishTime, Value = config.HardnessPunishTime}); + baseProp.Add(new() { Key = (int)EAttributeType.HardnessChange, Value = config.HardnessChange}); + baseProp.Add(new() { Key = (int)EAttributeType.HardnessReduce, Value = config.HardnessReduce}); + baseProp.Add(new() { Key = (int)EAttributeType.RageMax, Value = config.RageMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Rage, Value = config.Rage}); + baseProp.Add(new() { Key = (int)EAttributeType.RageRecover, Value = config.RageRecover}); + baseProp.Add(new() { Key = (int)EAttributeType.RagePunishTime, Value = config.RagePunishTime}); + baseProp.Add(new() { Key = (int)EAttributeType.RageChange, Value = config.RageChange}); + baseProp.Add(new() { Key = (int)EAttributeType.RageReduce, Value = config.RageReduce}); + baseProp.Add(new() { Key = (int)EAttributeType.ToughMax, Value = config.ToughMax}); + baseProp.Add(new() { Key = (int)EAttributeType.Tough, Value = config.Tough}); + baseProp.Add(new() { Key = (int)EAttributeType.ToughRecover, Value = config.ToughRecover}); + baseProp.Add(new() { Key = (int)EAttributeType.ToughChange, Value = config.ToughChange}); + baseProp.Add(new() { Key = (int)EAttributeType.ToughReduce, Value = config.ToughReduce}); + baseProp.Add(new() { Key = (int)EAttributeType.ToughRecoverDelayTime, Value = config.ToughRecoverDelayTime}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower1, Value = config.ElementPower1}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower2, Value = config.ElementPower2}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower3, Value = config.ElementPower3}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower4, Value = config.ElementPower4}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower5, Value = config.ElementPower5}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPower6, Value = config.ElementPower6}); + baseProp.Add(new() { Key = (int)EAttributeType.SpecialDamageChange, Value = config.SpecialDamageChange}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthFastClimbCost, Value = config.StrengthFastClimbCost}); + baseProp.Add(new() { Key = (int)EAttributeType.ElementPropertyType, Value = config.ElementPropertyType}); + baseProp.Add(new() { Key = (int)EAttributeType.WeakTime, Value = config.WeakTime}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDefRate, Value = config.IgnoreDefRate}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistancePhys, Value = config.IgnoreDamageResistancePhys}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement1, Value = config.IgnoreDamageResistanceElement1}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement2, Value = config.IgnoreDamageResistanceElement2}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement3, Value = config.IgnoreDamageResistanceElement3}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement4, Value = config.IgnoreDamageResistanceElement4}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement5, Value = config.IgnoreDamageResistanceElement5}); + baseProp.Add(new() { Key = (int)EAttributeType.IgnoreDamageResistanceElement6, Value = config.IgnoreDamageResistanceElement6}); + baseProp.Add(new() { Key = (int)EAttributeType.SkillToughRatio, Value = config.SkillToughRatio}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthClimbJump, Value = config.StrengthClimbJump}); + baseProp.Add(new() { Key = (int)EAttributeType.StrengthGliding, Value = config.StrengthGliding}); + baseProp.Add(new() { Key = (int)EAttributeType.Mass, Value = config.Mass}); + baseProp.Add(new() { Key = (int)EAttributeType.BrakingFrictionFactor, Value = config.BrakingFrictionFactor}); + baseProp.Add(new() { Key = (int)EAttributeType.GravityScale, Value = config.GravityScale}); + baseProp.Add(new() { Key = (int)EAttributeType.SpeedRatio, Value = config.SpeedRatio}); + baseProp.Add(new() { Key = (int)EAttributeType.DamageChangePhantom, Value = config.DamageChangePhantom}); + baseProp.Add(new() { Key = (int)EAttributeType.AutoAttackSpeed, Value = config.AutoAttackSpeed}); + baseProp.Add(new() { Key = (int)EAttributeType.CastAttackSpeed, Value = config.CastAttackSpeed}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp1Max, Value = config.StatusBuildUp1Max}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp1, Value = config.StatusBuildUp1}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp2Max, Value = config.StatusBuildUp2Max}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp2, Value = config.StatusBuildUp2}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp3Max, Value = config.StatusBuildUp3Max}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp3, Value = config.StatusBuildUp3}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp4Max, Value = config.StatusBuildUp4Max}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp4, Value = config.StatusBuildUp4}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp5Max, Value = config.StatusBuildUp5Max}); + baseProp.Add(new() { Key = (int)EAttributeType.StatusBuildUp5, Value = config.StatusBuildUp5}); + baseProp.Add(new() { Key = (int)EAttributeType.ParalysisTimeMax, Value = config.ParalysisTimeMax}); + baseProp.Add(new() { Key = (int)EAttributeType.ParalysisTime, Value = config.ParalysisTime}); + baseProp.Add(new() { Key = (int)EAttributeType.ParalysisTimeRecover, Value = config.ParalysisTimeRecover}); + + return baseProp; + } } diff --git a/GameServer/Controllers/RouletteController.cs b/GameServer/Controllers/RouletteController.cs index c2e4fb8..8c8d9cd 100644 --- a/GameServer/Controllers/RouletteController.cs +++ b/GameServer/Controllers/RouletteController.cs @@ -20,7 +20,7 @@ internal class RouletteController : Controller { await Session.Push(MessageId.ExploreToolAllNotify, new ExploreToolAllNotify { - SkillList = { 1001, 1004, 1003 }, + SkillList = { 3001, 3002, 1005, 1006, 1001, 1004, 1003, 1007, 1009 }, ExploreSkill = 1001 }); @@ -34,7 +34,7 @@ internal class RouletteController : Controller }, new ExploreSkillRoulette { - SkillIds = {1001, 1004, 1003, 0, 0, 0, 0, 0}, + SkillIds = {10002, 10004, 0, 0, 0, 0, 0, 0}, } } }); diff --git a/GameServer/Systems/Entity/Component/EntityFsmComponent.cs b/GameServer/Systems/Entity/Component/EntityFsmComponent.cs index 5c9fac7..f2e018e 100644 --- a/GameServer/Systems/Entity/Component/EntityFsmComponent.cs +++ b/GameServer/Systems/Entity/Component/EntityFsmComponent.cs @@ -4,6 +4,7 @@ namespace GameServer.Systems.Entity.Component; internal class EntityFsmComponent : EntityComponentBase { public List Fsms { get; } = []; + public int CommonHashCode { get; set; } public override EntityComponentType Type => EntityComponentType.EntityFsm; @@ -14,7 +15,8 @@ internal class EntityFsmComponent : EntityComponentBase Fsms = { Fsms - } + }, + CommonHashCode = CommonHashCode }, }; } diff --git a/GameServer/gameplay.json b/GameServer/gameplay.json index 6fa56c0..591b202 100644 --- a/GameServer/gameplay.json +++ b/GameServer/gameplay.json @@ -1,11 +1,11 @@ { "StartingValues": { "Name": "ReversedRooms", - "Characters": [ 1601, 1302, 1203 ], + "Characters": [ 1402, 1302, 1203 ], "Position": { - "X": -84500, - "Y": 164500, - "Z": 2000 + "X": -35823, + "Y": 67132, + "Z": 4067 } }, "Features": { diff --git a/Protocol/MessageId.cs b/Protocol/MessageId.cs index 8d82940..08b1b75 100644 --- a/Protocol/MessageId.cs +++ b/Protocol/MessageId.cs @@ -795,6 +795,8 @@ public enum MessageId NewBieCourseRewardResponse = 12153, NewJourneyRequest = 12214, NewJourneyResponse = 12215, + ClientCurrentRoleReportRequest = 12217, + ClientCurrentRoleReportResponse = 12218, NormalItemAddNotify = 5268, NormalItemRemoveNotify = 5269, NormalItemRequest = 5265, diff --git a/Protocol/message.proto b/Protocol/message.proto index dfa0eaa..7246a79 100644 --- a/Protocol/message.proto +++ b/Protocol/message.proto @@ -1573,6 +1573,17 @@ message ClientBasicInfoRequest { // MessageId: 5165 message ClientBasicInfoResponse { // MessageId: 3017 } +message ClientCurrentRoleReportRequest { // MessageId: 12217 + int32 player_id = 1; + int32 current_role_id = 2; + int64 current_entity_id = 3; +} + +message ClientCurrentRoleReportResponse { // MessageId: 12218 + int32 player_id = 1; + int64 current_entity_id = 2; +} + message ClientDataComponentPb { bool is_static_init = 1; int64 owner_id = 2; @@ -2633,6 +2644,7 @@ message EntityActiveRequest { // MessageId: 1541 message EntityActiveResponse { // MessageId: 1542 int32 error_code = 1; repeated EntityComponentPb component_pbs = 2; + bool is_visible = 3; } message EntityAddBubbleNotify { // MessageId: 12203 @@ -7900,6 +7912,7 @@ message SeasonData { int64 end_time = 3; repeated RoguelikeToken roguelike_token_list = 4; repeated SeasonReward season_reward_list = 5; + int32 token_item_count = 6; } message SeasonReward { @@ -10931,6 +10944,7 @@ enum ErrorCode { ERROR_CODE_ERR_ENTITY_PATROL_COMPONENT_NOT_EXIST = 600088; ERROR_CODE_ERR_INTERACT_IS_NOT_PARTICIPANT = 600089; ERROR_CODE_ERR_VISION_ENTITY_INTERACT_FAIL = 600090; + ERROR_CODE_ERR_MAX_DROP_TIMES = 600091; ERROR_CODE_ERR_SCENE_WORLD_NOT_EXIST = 700000; ERROR_CODE_ERR_PLAYER_NOT_IN_SCENE = 700001; ERROR_CODE_ERR_DROP_ENTITY_NOT_EXIST = 700002; @@ -11297,6 +11311,7 @@ enum ErrorCode { ERROR_CODE_ERR_ITEM_POS_INVAILD = 900058; ERROR_CODE_ERR_ITEM_ID_INVAILD = 900059; ERROR_CODE_ERR_ROULETTE_FUNC_ID_INVAILD = 900060; + ERROR_CODE_ERR_STATE_IS_RUNNING = 900061; ERROR_CODE_ERR_BUFF_ITEM_CONFIG = 1000000; ERROR_CODE_ERR_BUFF_ITEM_NOT_SHARE = 1000001; ERROR_CODE_ERR_BUFF_ITEM_SHARE_ROLE_ID = 1000002; @@ -11755,6 +11770,9 @@ enum ErrorCode { ERROR_CODE_ERR_EXPLORE_SKILL_PULL_GIANT_NOT_EXIST = 1800027; ERROR_CODE_ERR_HTTP_RPC_PARAM = 1800028; ERROR_CODE_ERR_PLAYER_NOT_IN_GAME_NODE = 1800029; + ERROR_CODE_ERR_APPLY_JOIN_PLAYER_CUR_ROLE_IS_DEAD = 1800030; + ERROR_CODE_ERR_PLAYER_CUR_ROLE_IS_DEAD_NO_JOIN = 1800031; + ERROR_CODE_ERR_PLAYER_CUR_ROLE_IS_DEAD = 1800032; ERROR_CODE_ERR_CALABASH_LEVEL_REQUEST = 1900000; ERROR_CODE_ERR_CALABASH_LEVEL_REWARD_DONE = 1900001; ERROR_CODE_ERR_CALABASH_LEVEL_CONFIG = 1900002; @@ -11793,6 +11811,7 @@ enum ErrorCode { ERROR_CODE_ERR_NEW_BIE_COURSE_CONFIG = 1900035; ERROR_CODE_ERR_NEW_BIE_COURSE_REWARD_HAD = 1900036; ERROR_CODE_ERR_NEW_BIE_COURSE_LEVEL = 1900037; + ERROR_CODE_ERR_DETECTION_TARGET_SILENCE = 1900038; ERROR_CODE_ERR_DO_COMMON_REWARD_CONFIG_ERROR = 2000000; ERROR_CODE_INST_PLAY_NOT_SETTLE = 2000001; ERROR_CODE_INST_PLAY_NOT_FINISH_EXECUTE = 2000002; @@ -12290,6 +12309,7 @@ enum WorldTeamLeaveReason { WORLD_TEAM_LEAVE_REASON_BE_KICK = 1; WORLD_TEAM_LEAVE_REASON_DISSOLVE = 2; WORLD_TEAM_LEAVE_REASON_LOGOUT = 3; + WORLD_TEAM_LEAVE_REASON_TO_OWN_BIG_WORLD = 4; } enum WorldTeamPlayerChangeType {