What's new
  • Visit Rebornbuddy
  • Visit Resources
  • Visit API Documentation
  • Visit Downloads
  • Visit Portal
  • Visit Panda Profiles
  • Visit LLamamMagic

WotB problem - Always activates when off cooldown

Kontio-

New Member
Joined
Feb 12, 2013
Messages
8
Reaction score
0
As topic states, I'v had a problem with Wrath of the Berserker skill for a long time now. No matter I try to do, it simply activates immediately after it's off cool down. I'm not using the ignore elites option, I'v tried a whole bunch of combinations of setting as well as adjusting the skill activation criteria.

I have completely reinstalled DB and trinity at least a couple of times with a couple of different versions of ecah and still the problem remains.

Any idea what might be the problem ?


**EDIT**

It works when I use the 'use on hard elites only'-option, but I'm running a CotA profile so I would very much like to get it working only on elites, but all elites.
 
Last edited:
I'v had the same problem. very annoying

i'm wonder: where is other barb comments?
 
I posted about it in Trinity thread.
WotB activates when bot encounters certain mobs number - if you don't have option about elite ones checked.

Possibly Rrrix will give us a little more options about this in future versions.
 
from memory the things that trigger wotb to activate..

if you are ignoring elites it will activate if there are 3 or more mobs around.
if you arent ignoring elites it will activate if there is any elites in 20 range or an elite is your target.
if you have it set to hard only, it will only activate on what they consider "hard" elite packs or if more than 4 elites are in 50 range.
if you are ignoring elites AND have it set to hard only, it will still activate when there are 3 or more mobs around.

the logic for "hard" elites is in RefreshCachedUnit.cs and the conditions for wotb are in Barbarian.cs
 
Change this:

// Wrath of the berserker, elites only (wrath of berserker)
if (!UseOOCBuff && Hotbar.Contains(SNOPower.Barbarian_WrathOfTheBerserker) &&
// If using WOTB on all elites, or if we should only use on "hard" affixes
(!Settings.Combat.Barbarian.WOTBHardOnly || (shouldUseBerserkerPower && Settings.Combat.Barbarian.WOTBHardOnly)) &&
// Not on heart of sin after Cydaea
CurrentTarget.ActorSNO != 193077 &&
// Make sure we are allowed to use wrath on goblins, else make sure this isn't a goblin
(
(!Settings.Combat.Barbarian.UseWOTBGoblin || (Settings.Combat.Barbarian.UseWOTBGoblin && CurrentTarget.IsTreasureGoblin)) ||
// If ignoring elites completely, trigger on 3 trash within 25 yards, or 10 trash in 50 yards
(Settings.Combat.Misc.IgnoreElites && (TargetUtil.AnyMobsInRange(25, 3) || TargetUtil.AnyMobsInRange(50, 10)) || !Settings.Combat.Misc.IgnoreElites) ||
// Otherwise use when Elite target is in 20 yards
(TargetUtil.AnyElitesInRange(20, 1) || TargetUtil.IsEliteTargetInRange(20f)) ||
// Or if our health is low
PlayerStatus.CurrentHealthPct <= 60
) &&
// Don't still have the buff
!GetHasBuff(SNOPower.Barbarian_WrathOfTheBerserker) && PowerManager.CanCast(SNOPower.Barbarian_WrathOfTheBerserker))
{
if (PlayerStatus.PrimaryResource >= 50)
{
DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Barbarian_WrathOfTheBerserker being used!({0})", CurrentTarget.InternalName);
shouldUseBerserkerPower = false;
IsWaitingForSpecial = false;
return new TrinityPower(SNOPower.Barbarian_WrathOfTheBerserker, 0f, vNullLocation, CurrentWorldDynamicId, -1, 1, 1, WAIT_FOR_ANIM);
}
else
{
DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Barbarian_WrathOfTheBerserker ready, waiting for fury...");
IsWaitingForSpecial = true;
}
}

To this:

// Wrath of the berserker, elites only (wrath of berserker)
if (!UseOOCBuff && Hotbar.Contains(SNOPower.Barbarian_WrathOfTheBerserker) &&
// If using WOTB on all elites, or if we should only use on "hard" affixes
(!Settings.Combat.Barbarian.WOTBHardOnly || (bUseBerserker && Settings.Combat.Barbarian.WOTBHardOnly)) &&
// Not on heart of sin after Cydaea
CurrentTarget.ActorSNO != 193077 &&
// Make sure we are allowed to use wrath on goblins, else make sure this isn't a goblin
(Settings.Combat.Barbarian.UseWOTBGoblin || !CurrentTarget.IsTreasureGoblin || ElitesWithinRange[RANGE_15] >= 1) &&
// If on a boss, only when injured
((CurrentTarget.IsBoss && CurrentTarget.HitPointsPct <= 0.99 && !Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) ||
// If *NOT* on a boss, and definitely no boss in range, then judge based on any elites at all within 30 feet
((!CurrentTarget.IsBoss || Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) &&
(!bAnyBossesInRange || Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) &&
((ElitesWithinRange[RANGE_20] >= 1 || CurrentTarget.IsEliteRareUnique) && (CurrentTarget.HitPointsPct >= 0.30 || PlayerStatus.CurrentHealthPct <= 0.60))
)) &&
//Do not activate too far from targets (for bosses / uber elites)
CurrentTarget.CentreDistance <= 35f &&
// Don't still have the buff
!GetHasBuff(SNOPower.Barbarian_WrathOfTheBerserker) && PowerManager.CanCast(SNOPower.Barbarian_WrathOfTheBerserker))
{
if (PlayerStatus.PrimaryResource >= 50)
{
DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Berserk being used!({0})", CurrentTarget.InternalName);
bUseBerserker = false;
return new TrinityPower(SNOPower.Barbarian_WrathOfTheBerserker, 0f, vNullLocation, CurrentWorldDynamicId, -1, 1, 1, USE_SLOWLY);
}
else
{
DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Berserk ready, waiting for fury...");
IsWaitingForSpecial = true;
}
}

Folder Abilities, file Barbarian.cs.

I fixed this by taking code from 1.7.2.7.
May not be working for you, depends on ur trinity settings.
Anyway, my barbs are using wotb on elites, only.
 
Saidou, TY. it's just what i need.
but if i do so, DB start with errors:
Compiler Error: ...Barbarian.cs(76,62) : error CS0103: The name 'bUseBerserker' does not exist in the current context
Compiler Error: ...Barbarian.cs(85,22) : error CS0103: The name 'bAnyBossesInRange' does not exist in the current context
Compiler Error: ...Barbarian.cs(96,21) : error CS0103: The name 'bUseBerserker' does not exist in the current context
Compiler Error: ...Barbarian.cs(97,137) : error CS0103: The name 'USE_SLOWLY' does not exist in the current context

may be you changed any more code from 1.7.2.7?
 
from memory the things that trigger wotb to activate..

if you are ignoring elites it will activate if there are 3 or more mobs around.
if you arent ignoring elites it will activate if there is any elites in 20 range or an elite is your target.
if you have it set to hard only, it will only activate on what they consider "hard" elite packs or if more than 4 elites are in 50 range.
if you are ignoring elites AND have it set to hard only, it will still activate when there are 3 or more mobs around.

the logic for "hard" elites is in RefreshCachedUnit.cs and the conditions for wotb are in Barbarian.cs

you as usually no clue how it works before

before wotb working on leets only

now it doesnt (from 1.0.8)
 
Change this:



To this:



Folder Abilities, file Barbarian.cs.

I fixed this by taking code from 1.7.2.7.
May not be working for you, depends on ur trinity settings.
Anyway, my barbs are using wotb on elites, only.


dont work for me - compiler errors and no profile loaded.....
 
dont work for me - compiler errors and no profile loaded.....

fix it!
just try to combine code from trinity 1.7.2.7 and 1.7.2.12
may be it not working properly on bosses, becouse "bAnyBossesInRange" not exist in new trinity.
but all other cases is WORKING now!

try this:
Code:
            // Wrath of the berserker, elites only (wrath of berserker)
            if (!UseOOCBuff && Hotbar.Contains(SNOPower.Barbarian_WrathOfTheBerserker) && 
                // If using WOTB on all elites, or if we should only use on "hard" affixes
                (!Settings.Combat.Barbarian.WOTBHardOnly || (shouldUseBerserkerPower && Settings.Combat.Barbarian.WOTBHardOnly)) &&
                // Not on heart of sin after Cydaea
                CurrentTarget.ActorSNO != 193077 &&
                // Make sure we are allowed to use wrath on goblins, else make sure this isn't a goblin
                (Settings.Combat.Barbarian.UseWOTBGoblin || !CurrentTarget.IsTreasureGoblin || ElitesWithinRange[RANGE_15] >= 1) &&
                // If on a boss, only when injured
                ((CurrentTarget.IsBoss && CurrentTarget.HitPoints <= 0.99 && !Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) ||
                // If *NOT* on a boss, and definitely no boss in range, then judge based on any elites at all within 30 feet
                 ((!CurrentTarget.IsBoss || Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) &&
                   (Hotbar.Contains(SNOPower.Barbarian_Whirlwind)) &&
                   ((ElitesWithinRange[RANGE_20] >= 1 || CurrentTarget.IsEliteRareUnique) && (CurrentTarget.HitPoints >= 0.30 || PlayerStatus.CurrentHealthPct <= 0.60))
                 )) &&
				//Do not activate too far from targets (for bosses / uber elites)
				CurrentTarget.CentreDistance <= 35f &&
                // Don't still have the buff
                !GetHasBuff(SNOPower.Barbarian_WrathOfTheBerserker) && PowerManager.CanCast(SNOPower.Barbarian_WrathOfTheBerserker))
            {
                if (PlayerStatus.PrimaryResource >= 50)
                {
                    DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Berserk being used!({0})", CurrentTarget.InternalName);
                    shouldUseBerserkerPower = false;
                    return new TrinityPower(SNOPower.Barbarian_WrathOfTheBerserker, 0f, vNullLocation, CurrentWorldDynamicId, -1, 1, 1, WAIT_FOR_ANIM);
                }
                else
                {
                    DbHelper.Log(TrinityLogLevel.Verbose, LogCategory.UserInformation, "Berserk ready, waiting for fury..."); 
                    IsWaitingForSpecial = true;
                }
            }

p.s. quadrotony, sorry for bad english, im from horadric.ru ;)
 
haha horadric not for pro botters anymore:D

only raqi there

ty for code
 
can some1 confim that in WOTB barb also dont use globes of health as in normal mode?
or its my imagination
 
Back
Top