death,awesome awesome job on Agility. This is the reason i'm enjoying wildstar again. just a quick question though : can we list out the abilities/amps the bot uses/doesnt use? as a stalker,my last 3 buttons are ever changing as i havent found any other abilites than my core (shred ,impale,ruin and punish) that the bot uses. edit : forgot to mention nano skin:lethal & analyse weakness!!
That isn't surprising as the current Stalker routine is based on my lv15 Stalker. My Medic should be at 50 tomorrow/the next day, so I can divert my gaze to a few more classes! (Thinking of getting everything to 30~ to get a more wide-spread basis on them, maybe?) If you open up the Stalker.cs file with a text program, you'll see exactly what the bot is doing for each of your buttons!
oh yeah..cool..lemme play around with that a lil bit to see if i can help you out with that. edit : please check if the format is correct.. if (SpellController.CanCast("Neutralize")) return "neutralize"; edit 2 : public static string StunAttack() { if (SpellController.CanCast("Collapse")) return "Collapse"; if (SpellController.CanCast("Stagger")) return "Stagger"; return FullAttack(); }
The addition to StunAttack() seems correct, and Neutralize will likely need an additional tweak: Code: if (SpellController.CanCast("Neutralize") && Me.HasBuff("StealthBuffNameHere")) return "Neutralize";
Neutralise with stealth is a best case scenario, but not very likely. And not using it every time we have suit power is a big big loss of dps Edit: does the bot go down the list of abilities or does it choose them at random? The reason I am is because collapse is a IA and stagger is the stun. So collapse should always hit before stagger.
I stand corrected! It goes in reading order, any time an 'if()' statement is true, the 'return' will fire, and it will leave the method. So yes, the higher up the list, the higher the priority.
heres my updated stalker.cs file. i dont know whats wrong,it doesnt seem to be working properly..i hold down 1,it doesnt fire ANY abilites at all..and no error in the chat log either. i just double checked my folders,and apparently there are 2 stalker.cs files..one is in bots/agility/classes, the other is in routines/classes.. where do i place the modified stalker.cs?
I have just pushed the update to Stalker after a minor tweak, I won't personally know how it operates until I gain more levels, though!
it works awesome!!thanks for that death.also,as a community warning..i would run without neutralize till lvl 40-45+(till you can get both shred and impale to t8 levels for regenning suit power.otherwise you're NEVER gonna have SP.)
If you could break down for me what tier of skills for when to use neutralize, I can add support for that too. EDIT: I see it's a bit more complex than that. I'll work on it.
death,the last update with the stalker changes broke punish, it doesnt seem to cast punish even if all the conditions are met(has buff,can cast and SP<35) i'm thinking adding 3 conditions in 1 line broke it? will try to remove the SP condition and see if it works edit : yeah that fixed it,but i'm thinking i should remove the Has.buff condition rather than the SP checkmark,since agility casts stealth every CD,we crit almost always.will update edit 2 : i think Wildbuddy's Resource meter is broken,it cant return our suit power(sp),hence that leads to breaking of the code in agility.
Hi Deathdisguise, yesterday when playing around on my warrior I found a 'bug' while using Tremor T4. It would case this error: Code: 2015-06-16 16:59:35,816 [Pulsator Thread] ERROR Pulsator - Exception while pulsing Agility.Agility System.OverflowException: TimeSpan overflowed because the duration is too long. at System.TimeSpan.Interval(Double value, Int32 scale) at Buddy.Wildstar.Game.SpellManager.SpellInformation.get_CooldownTimeRemaining() at Agility.SpellController.Cooldown(SpellInformation sp) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 115 at Agility.SpellController.CanCast(String spell) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 31 at Agility.Warrior.FullAttack() in d:\Wbuddy\Bots\Agility\Classes\Warrior.cs:line 79 at Agility.RotationController.FullAttack() in d:\Wbuddy\Bots\Agility\Controllers\RotationController.cs:line 22 at Agility.Agility.DoWork() in d:\Wbuddy\Bots\Agility\Agility.cs:line 113 at Agility.Agility.Pulse() in d:\Wbuddy\Bots\Agility\Agility.cs:line 71 at Buddy.Wildstar.Engine.Pulsator.Pulse() 2015-06-16 16:59:35,854 [Pulsator Thread] ERROR Pulsator - Exception while pulsing Agility.Agility System.OverflowException: TimeSpan overflowed because the duration is too long. at System.TimeSpan.Interval(Double value, Int32 scale) at Buddy.Wildstar.Game.SpellManager.SpellInformation.get_CooldownTimeRemaining() at Agility.SpellController.Cooldown(SpellInformation sp) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 115 at Agility.SpellController.CanCast(String spell) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 31 at Agility.Warrior.FullAttack() in d:\Wbuddy\Bots\Agility\Classes\Warrior.cs:line 79 at Agility.RotationController.FullAttack() in d:\Wbuddy\Bots\Agility\Controllers\RotationController.cs:line 22 at Agility.Agility.DoWork() in d:\Wbuddy\Bots\Agility\Agility.cs:line 113 at Agility.Agility.Pulse() in d:\Wbuddy\Bots\Agility\Agility.cs:line 71 at Buddy.Wildstar.Engine.Pulsator.Pulse() 2015-06-16 16:59:35,892 [Pulsator Thread] ERROR Pulsator - Exception while pulsing Agility.Agility System.OverflowException: TimeSpan overflowed because the duration is too long. at System.TimeSpan.Interval(Double value, Int32 scale) at Buddy.Wildstar.Game.SpellManager.SpellInformation.get_CooldownTimeRemaining() at Agility.SpellController.Cooldown(SpellInformation sp) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 115 at Agility.SpellController.CanCast(String spell) in d:\Wbuddy\Bots\Agility\Controllers\SpellController.cs:line 31 at Agility.Warrior.FullAttack() in d:\Wbuddy\Bots\Agility\Classes\Warrior.cs:line 79 at Agility.RotationController.FullAttack() in d:\Wbuddy\Bots\Agility\Controllers\RotationController.cs:line 22 at Agility.Agility.DoWork() in d:\Wbuddy\Bots\Agility\Agility.cs:line 113 at Agility.Agility.Pulse() in d:\Wbuddy\Bots\Agility\Agility.cs:line 71 at Buddy.Wildstar.Engine.Pulsator.Pulse() 2015-06-16 16:59:35,983 [Pulsator Thread] ERROR Pulsator - Exception while pulsing Agility.Agility System.OverflowException: TimeSpan overflowed because the duration is too long. If you want to recreate i was using this build: Warrior Builder - WS-Base
Ooo, thanks for the heads up! I have a pretty good idea why this is still showing up even though T4+ is considered a 'charge' ability! I'll get on it.
The reason it's not showing up as a 'charge' ability, is because SpellInformation is bugged and will only return the base tier on the given spell. As tremor has to be tiered up before it will become a "charge" ability, your "HasCharges(sp)" will fail as a result. You're going to need to make a LUA method that will check if a given ability has charges or not.
Yeap! I've just wrapped a SpellTierId that is actually the current tier, just doing some refactoring and prettying up right now.