Issues i've found so far:
When using 2 x Bul kathos weapon, its not spamming WW
Its not using WOTB of cooldown - even when its marked like this.
Think there was a check there - checking if u had 2 x BK - if u had that it would perma WWI was never able to spam WW, not even on the old version. How do I do it? I'm using IMBK, not BK.
That should work with boulder breaker too.Think there was a check there - checking if u had 2 x BK - if u had that it would perma WW
if (Player.ActorClass == ActorClass.Barbarian)
{
bool wwToItem = (CurrentTarget.Type != GObjectType.Item || (CurrentTarget.Type == GObjectType.Item && CurrentTarget.Distance > 10f));
// Whirlwind against everything within range
if (Player.PrimaryResource >= 10 && CombatBase.CanCast(SNOPower.Barbarian_Whirlwind) && wwToItem &&
(TargetUtil.AnyMobsInRange(20, false) || Sets.BulKathossOath.IsFullyEquipped) && !IsWaitingForSpecial)
{
Skills.Barbarian.Whirlwind.Cast(CurrentDestination);
LastMoveToTarget = CurrentDestination;
return GetRunStatus(RunStatus.Running);
}
}
This code should have a lot of improvement with pathing to avoid WWing in front of obstacle between you and target:
This issue is really a big deal when you use Bul Kathoss Oath, personally had a lot of situations when 10+ mobs was behind an obstacle and bot WWing untill blacklisting them all. With other weapons this issue is slightly notable, but it still persist.
Yes i can just comment the part with Oath Set check but bot loosing movement speedIs there any way to invoke Navigator.MoveTo with WW enabled?
"Should"? did you test it? You removed the Raycast check, which isn't a good idea in my opinion - this will likely get you more stuck, not less.
Navigator.MoveTo will always call PlayerMover.MoveTowards along the path designated by the navigator.
if (Player.ActorClass == ActorClass.Barbarian)
{
bool wwToItem = (CurrentTarget.Type != TrinityObjectType.Item || (CurrentTarget.Type == TrinityObjectType.Item && CurrentTarget.Distance > 10f && NavHelper.CanRayCast(CurrentTarget.Position)));
// Whirlwind against everything within range
if (Player.PrimaryResource >= 10 && CombatBase.CanCast(SNOPower.Barbarian_Whirlwind) && wwToItem &&
(TargetUtil.AnyMobsInRange(20, false) || Sets.BulKathossOath.IsFullyEquipped) && !IsWaitingForSpecial)
{
Skills.Barbarian.Whirlwind.Cast(CurrentDestination);
LastMoveToTarget = CurrentDestination;
return GetRunStatus(RunStatus.Running, "Whirlwind");
}
}
if (Player.ActorClass == ActorClass.Barbarian)
{
bool wwToItem = (CurrentTarget.Type != TrinityObjectType.Item || (CurrentTarget.Type == TrinityObjectType.Item && CurrentTarget.Distance > 10f));
// Whirlwind against everything within range
if (Player.PrimaryResource >= 10 && CombatBase.CanCast(SNOPower.Barbarian_Whirlwind) && NavHelper.CanRayCast(CurrentTarget.Position) && wwToItem &&
(TargetUtil.AnyMobsInRange(20, false) || Sets.BulKathossOath.IsFullyEquipped) && !IsWaitingForSpecial)
{
Skills.Barbarian.Whirlwind.Cast(CurrentDestination);
LastMoveToTarget = CurrentDestination;
return GetRunStatus(RunStatus.Running, "Whirlwind");
}
}
In your last version Raycast is used only for items not for other targets ... And i'm not updating DB atm and using previous version if trinity since i making a lot of my own changes in it, this is unmoded code from it, not a big difference with new one. I added raycast manually for main check before casting WW and anyway this is bad solution since bot is loosing movement speed = loosing time.
using (new PerformanceLogger("HandleTarget.LoSCheck"))
{
TargetCurrentDistance = CurrentTarget.RadiusDistance;
if (DataDictionary.AlwaysRaycastWorlds.Contains(Player.WorldID) && CurrentTarget.Distance > CurrentTarget.Radius + 2f)
{
CurrentTargetIsInLoS = NavHelper.CanRayCast(Player.Position, CurrentDestination);
}
[B][COLOR=#ff0000] else if (TargetCurrentDistance <= 20f)[/COLOR][/B]
[B][COLOR=#ff0000] {[/COLOR][/B]
[B][COLOR=#ff0000] CurrentTargetIsInLoS = true;[/COLOR][/B]
[B][COLOR=#ff0000] }[/COLOR][/B]
else if (Settings.Combat.Misc.UseNavMeshTargeting && CurrentTarget.Type != TrinityObjectType.Barricade && CurrentTarget.Type != TrinityObjectType.Destructible)
{
CurrentTargetIsInLoS = (NavHelper.CanRayCast(Player.Position, CurrentDestination) || DataDictionary.LineOfSightWhitelist.Contains(CurrentTarget.ActorSNO));
}
else
{
CurrentTargetIsInLoS = true;
}
}
This is where we determine whether or not the unit is in line of sight - try deleting the section in red and see if that helps? (HandleTarget.cs 224-226)
Gem upgrade order doesn't seem to work.
This is the priority I use (minimum chance to upgrade 1%):
Equipped gems
Lowest Ranks
Highest Rank
Bane of the Trapped rank 53
Taeguk rank 53
Pain Enhancer rank 61
Those three are the ones equipped too.
It upgrades pain enhancer regardless. I've tried having the gem that I want upgraded at the top, still goes to Pain Enhancer.
Now I tried
Equipped gems
Lowest rank
And it goes immediately to gems that I do not have equipped.
It says "Using gem priority highest rank" and then goes to an endless loop of lvl 50 gorok of swiftness or whatever it's called. Seems to just skip "Equipped gems".
Yes friend, same problem here.Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Settings\Loot\ItemListSettings.cs(27,7) : warning CS0105: The using directive for 'System.Text' appeared previously in this namespace
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Settings\Loot\ItemListSettings.cs(28,7) : warning CS0105: The using directive for 'System.IO' appeared previously in this namespace
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Items\ItemWrapper.cs(12,18) : warning CS0660: 'Trinity.Items.ItemWrapper' defines operator == or operator != but does not override Object.Equals(object o)
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\LazyCache\TrinityGizmo.cs(265,21) : warning CS0108: 'Trinity.LazyCache.TrinityGizmo.IsShrine' hides inherited member 'Trinity.LazyCache.TrinityObject.IsShrine'. Use the new keyword if hiding was intended.
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\BarbarianCombat.cs(333,75) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\BarbarianCombat.cs(416,148) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\DemonHunterCombat.cs(236,102) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\MonkCombat.cs(476,136) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\MonkCombat.cs(486,105) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\MonkCombat.cs(493,102) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\MonkCombat.cs(518,70) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Combat\Abilities\MonkCombat.cs(550,105) : warning CS0618: 'Trinity.Combat.Abilities.CombatBase.MinEnergyReserve' is obsolete: 'Use EnergyReserve, Set in Class's CombatSettings() override'
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\DbProvider\RecipeBot.cs(14,40) : warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Helpers\MemoryHelper.cs(51,34) : warning CS0168: The variable 'ex' is declared but never used
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Helpers\MemoryHelper.cs(61,34) : warning CS0168: The variable 'ex' is declared but never used
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\Helpers\ToStringReflector.cs(16,32) : warning CS0168: The variable 'properties' is declared but never used
Compiler Error: d:\Downloads\Demonbuddy_1.1.2273.404\Plugins\Trinity\LazyCache\CacheBase.cs(133,61) : error CS1061: 'Zeta.Game.Internals.ActorManager' does not contain a definition for 'GetActorByACDId' and no extension method 'GetActorByACDId' accepting a first argument of type 'Zeta.Game.Internals.ActorManager' could be found (are you missing a using directive or an assembly reference?)
bot doesn't reckognize trinity plugin. why not?
Still goes for Gogok of Swiftness, which is at its maxlevel and just creates a loop until gold inactivity is tripped. I've literally put it on bottom and that's still the one it chooses.Just try like this :
Equipped gems
Bane of the Trapped rank 53
Taeguk rank 53
Pain Enhancer rank 61