From 2ed0f1c7bbaaf67a21868fd0612f2ebe18ced5e9 Mon Sep 17 00:00:00 2001 From: Gitea Date: Sat, 20 Aug 2022 10:09:50 +1000 Subject: [PATCH] Barbarian Fix --- .../Services/GameUtilitiesService.cs | 2 +- .../Implementations/HeroSkills/Barbarian.cs | 12 +++++------- .../PowerSystem/Payloads/AttackPayload.cs | 11 ++--------- .../PowerSystem/Payloads/DeathPayload.cs | 17 ++++++++--------- .../Attribute/AttributeSetValueMessage.cs | 9 ++++++--- .../Attribute/AttributesSetValuesMessage.cs | 11 +++++++---- .../Message/Definitions/Game/VersionsMessage.cs | 2 +- 7 files changed, 30 insertions(+), 34 deletions(-) diff --git a/src/DiIiS-NA/BGS-Server/ServicesSystem/Services/GameUtilitiesService.cs b/src/DiIiS-NA/BGS-Server/ServicesSystem/Services/GameUtilitiesService.cs index 397d18e..a1b6217 100644 --- a/src/DiIiS-NA/BGS-Server/ServicesSystem/Services/GameUtilitiesService.cs +++ b/src/DiIiS-NA/BGS-Server/ServicesSystem/Services/GameUtilitiesService.cs @@ -77,7 +77,7 @@ namespace DiIiS_NA.LoginServer.ServicesSystem.Services Init.SetChatRestrictionContentLicenseId(0); - Init.SetAchievementsContentHandle(D3.OnlineService.ContentHandle.CreateBuilder().SetHash("d143e14d7d59897bd8bedb040ab40738bbfcb3d234fd52338d90e67fe43c573e").SetRegion("EU").SetUsage(".achu")); + Init.SetAchievementsContentHandle(D3.OnlineService.ContentHandle.CreateBuilder().SetHash("20375546335DA13E31554A104FE036B5BCC878D715108F1FCEB50AB85BD87478").SetRegion("EU").SetUsage(".achu")); HeroDigestListResponse.Builder d = HeroDigestListResponse.CreateBuilder(); foreach (Toon t in Client.Account.GameAccount.Toons) { diff --git a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Implementations/HeroSkills/Barbarian.cs b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Implementations/HeroSkills/Barbarian.cs index 5bd4e30..3dff62a 100644 --- a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Implementations/HeroSkills/Barbarian.cs +++ b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Implementations/HeroSkills/Barbarian.cs @@ -1,4 +1,4 @@ -//Blizzless Project 2022 +//Blizzless Project 2022 using DiIiS_NA.GameServer.Core.Types.Math; //Blizzless Project 2022 using DiIiS_NA.GameServer.Core.Types.TagMap; @@ -24,9 +24,7 @@ using System; using System.Collections.Generic; //Blizzless Project 2022 using System.Linq; -//Blizzless Project 2022 -using System.Text; -//Blizzless Project 2022 +//Blizzless Project 2022 using System.Threading.Tasks; namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Implementations @@ -42,7 +40,7 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Implementations var ShockWavePos = PowerMath.TranslateDirection2D(User.Position, TargetPosition, User.Position, ScriptFormula(23)); - var maxHits = 2; + var maxHits = 1; for (int i = 0; i < maxHits; ++i) { AttackPayload attack = new AttackPayload(this); @@ -76,7 +74,7 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Implementations else { if (Rand.NextDouble() < ScriptFormula(0)) - Knockback(hitPayload.Target, ScriptFormula(5), ScriptFormula(6), ScriptFormula(7)); + Knockback(hitPayload.Target, 0.8f, 2, -0.03f); } }; attack.Apply(); @@ -704,7 +702,7 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Implementations if (Rune_B > 0) { AttackPayload attack = new AttackPayload(this); - attack.Targets = GetEnemiesInArcDirection(User.Position, TargetPosition, ScriptFormula(14), ScriptFormula(15)); + attack.Targets = GetEnemiesInArcDirection(User.Position, TargetPosition, 22, 1); attack.AddWeaponDamage(ScriptFormula(23), DamageType.Physical); attack.Apply(); yield break; diff --git a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/AttackPayload.cs b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/AttackPayload.cs index 65b0be5..5025630 100644 --- a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/AttackPayload.cs +++ b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/AttackPayload.cs @@ -90,8 +90,6 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads public void Apply() { - Task.Delay(1).ContinueWith((a) => { - if (this.Targets == null) this.Targets = new TargetList(); if (this.Target.World != null) { @@ -104,7 +102,6 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads { return; } - if (this.Target is Player && this.DamageEntries.Count > 0) { Player player = (Player)this.Target; @@ -113,14 +110,13 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads extra.OnTargeted(player, null); } - if (this.Context.User is Player && this.Context.Target is Monster && this.Context.Target.GBHandle.Type == 1) { (this.Context.User as Player).ExpBonusData.MonsterAttacked((this.Context.User as Player).InGameClient.Game.TickCounter); ((this.Context.Target as Monster).Brain as AISystem.Brains.MonsterBrain).AttackedBy = this.Context.User; } - // main targets - foreach (Actor target in this.Targets.Actors) + + foreach (Actor target in this.Targets.Actors) { if (target == null || target.World == null || target.World != null && target.World.PowerManager.IsDeletingActor(target)) continue; @@ -143,9 +139,6 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads payload.Apply(); } } - - }); - } private bool _DoCriticalHit(Actor user, Actor target, float chcBonus = 0f) diff --git a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/DeathPayload.cs b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/DeathPayload.cs index d42a2f9..6c27381 100644 --- a/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/DeathPayload.cs +++ b/src/DiIiS-NA/D3-GameServer/GSSystem/PowerSystem/Payloads/DeathPayload.cs @@ -100,7 +100,6 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads plr.World.BuffManager.AddBuff(plr, plr, new SpiritVesselCooldownBuff()); return; } - if (plr.SkillSet.HasPassive(156484) && plr.World.BuffManager.GetFirstBuff(plr) == null) //NearDeathExperience (monk) { plr.Attributes[GameAttribute.Hitpoints_Cur] = plr.Attributes[GameAttribute.Hitpoints_Max_Total] * 0.35f; @@ -114,14 +113,14 @@ namespace DiIiS_NA.GameServer.GSSystem.PowerSystem.Payloads { Hireling mon = (Hireling)this.Target; mon.Dead = true; - Task.Delay(10000).ContinueWith(a => { - if (mon.Dead) - { - mon.Attributes[GameAttribute.Hitpoints_Cur] = mon.Attributes[GameAttribute.Hitpoints_Max_Total]; - mon.Attributes.BroadcastChangedIfRevealed(); - mon.Dead = false; - } - }); + + if (mon.Dead) + { + mon.Attributes[GameAttribute.Hitpoints_Cur] = mon.Attributes[GameAttribute.Hitpoints_Max_Total]; + mon.Attributes.BroadcastChangedIfRevealed(); + mon.Dead = false; + } + return; } this.Successful = true; diff --git a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributeSetValueMessage.cs b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributeSetValueMessage.cs index ce05fc7..c28e0c2 100644 --- a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributeSetValueMessage.cs +++ b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributeSetValueMessage.cs @@ -31,9 +31,12 @@ namespace DiIiS_NA.GameServer.MessageSystem.Message.Definitions.Attribute public override void Encode(GameBitBuffer buffer) { - buffer.WriteUInt(32, ActorID); - Attribute.Encode(buffer); - Attribute.EncodeValue(buffer); + //if (ActorID != 0) + { + buffer.WriteUInt(32, ActorID); + Attribute.Encode(buffer); + Attribute.EncodeValue(buffer); + } } public override void AsText(StringBuilder b, int pad) diff --git a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributesSetValuesMessage.cs b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributesSetValuesMessage.cs index 2b3708b..75d6863 100644 --- a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributesSetValuesMessage.cs +++ b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Attribute/AttributesSetValuesMessage.cs @@ -34,10 +34,13 @@ namespace DiIiS_NA.GameServer.MessageSystem.Message.Definitions.Attribute public override void Encode(GameBitBuffer buffer) { - buffer.WriteUInt(32, ActorID); - buffer.WriteInt(4, atKeyVals.Length); - for (int i = 0; i < atKeyVals.Length; i++) { atKeyVals[i].Encode(buffer); } - for (int i = 0; i < atKeyVals.Length; i++) { atKeyVals[i].EncodeValue(buffer); } + //if (ActorID != 0) + { + buffer.WriteUInt(32, ActorID); + buffer.WriteInt(4, atKeyVals.Length); + for (int i = 0; i < atKeyVals.Length; i++) { atKeyVals[i].Encode(buffer); } + for (int i = 0; i < atKeyVals.Length; i++) { atKeyVals[i].EncodeValue(buffer); } + } } public override void AsText(StringBuilder b, int pad) diff --git a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Game/VersionsMessage.cs b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Game/VersionsMessage.cs index 85bff56..d52de2d 100644 --- a/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Game/VersionsMessage.cs +++ b/src/DiIiS-NA/D3-GameServer/MessageSystem/Message/Definitions/Game/VersionsMessage.cs @@ -22,7 +22,7 @@ namespace DiIiS_NA.GameServer.MessageSystem.Message.Definitions.Game { this.SNOPackHash = snoPacketHash; this.ProtocolHash = protocol; - this.Version = "DiIiS Server - 2.7.1.78185"; + this.Version = "DiIiS Server - 2.7.3.82753"; } public VersionsMessage() : base(Opcodes.VersionsMessage) { }