Jump to content


Photo

Feral Powershifting: macros, thresholds, mana management


  • This topic is locked This topic is locked
221 replies to this topic

#1 Allev

Allev

    King Hippo

  • Members
  • 545 posts

Posted 16 May 2008 - 07:21 PM

I'm creating a new thread because of the development of the new macros. I'm doing this for several reasons:

1-- Ferals looking for hot new macro goodness will probably want to go directly to a place where it's being discussed
2-- There's probably a lot of discussion left to be had: ideal macro settings with a manglebot, without a manglebot, special adjustments for pots, maintenance of mana, and so on. None of this really has anything to do with the megathread's current contents.
3-- It'll be a pain in the ass to say "go to page 147 out of XXX is where the discussion started" every time someone asks where all this stuff came from.
4-- This topic will be dominate the feral conversation enough that other topics in the megathread will get drowned out.
5-- Most of the old powershifting thread is obsoleted or full of "go post in the megathread" posts.

Now, onto the quick summary:

Energy-checking shifting macro
Malthoreniel posted a few macros which have energy checking and optioning in them. The first, which simply checks energy before it powershifts, is here:
/run local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>XXX or not IsUsableSpell(f) or CancelPlayerBuff(f)
/stopmacro [form]
/cast Cat Form

Inline shifting with other attacks
He also posted a way to "inline" attacks, so that you'll shift if you're below a threshold, or otherwise attempt an attack:
#showtooltip
/run if pwx then local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>pws or not IsUsableSpell(f) or CancelPlayerBuff(f) end
/cast [form] YourAttackHere
/stopmacro [form]
/cast Cat Form
This macro also includes a way to toggle the macro so that you can turn off its shifting functionality:
/run local c=DEFAULT_CHAT_FRAME if  pwx then pwx=false c:AddMessage("Powershift disabled",1,1,1) else pwx=true pws=8 c:AddMessage("Powershift enabled, 8 energy threshold",1,1,1)end

Replace "YourAttackHere" in the first macro and 8 in the second macro to whatever settings you'd like for that attack. You can customize these for different abilities by renaming "pwx" to another name for a different attack in a different macro. Or, simply replace "pws" in the first macro.

There are other macros posted with particular implementations, but these are the basics.

Mods
I'll update this this weekend. This is just a cut and paste of raffy's post:

http://oldschoolwow.com/FeralKit.zip

An Ace mod that combines both AutoPowershift functions and the GCD-safe Cancelform functions.

-- ps(): cancels form if energy is under threshold and everything else is good
-- cf(formIndex): cancels the form (or any form if non specified) if not inside the gcd (1 = bear, 3 = cat)

Toggle Automatic Powershifting:
/feralkit ps toggle

Set Energy Threshold:
/feralkit ps energy 18

"Mangle" Macro
/run ps()
/use [noform] Haste Potion
/cast [noform] Cat Form; Mangle (Cat)()

"Shred" Macro
/run ps()
/use [noform] Haste Potion
/cast [noform] Cat Form; Mangle (Cat)()

Chat Frame:
FeralKit: 8 energy wasted.
FeralKit: 4 energy wasted.
FeralKit: 12 energy wasted over 2 shifts (6.0 energy per shift). (<-- Does this when combat ends.)
(I didn't add a setting yet to turn this on/off)

"HS" Macro
#showtooltip Master Healthstone
/use [noform] Master Healthstone
/stopmacro [noform]
/run cf(1)
/use [noform] Master Healthstone
/cast [noform] Dire Bear Form
/run cf(3)
/use [noform] Master Healthstone
/cast [noform] Cat Form

"Bearstand" Macro (from page 1)
/run cf()
/stopmacro [form]
/use Master Healthstone
/use item:32905
/use item:32784
/use item:28100
/use item:22829
/cast Dire Bear Form


Energy thresholds

Maeltne did some energy threshold work and posted it below. I think this was theorycraft-only:

Threshold at 22:
40
60
shred
18
powershift

Yields 1 shred per tick, and 1 powershift/tick. Probably too mana intensive, but requires testing.

Thresold at 18:
40
60
shred
18
38
58
shred
16
powershift

Yields 1 shred per 1.5 ticks, and 1 powershift per 3 ticks. Sweet spot? Maybe. Requires testing

Threshold at 16:
40
60
shred
18
38
58
shred
16
36
56
shred
14
powershift

Yields 1 shred per 1.67 ticks, and 1 powershift per 5 ticks.


Threshold at 14
40
60
shred
18
38
58
shred
16
36
56
shred
14
34
54
shred
12
powershift

yields 1 shred per 1.75 ticks and 1 powershift per 7 ticks.

Abstracting:
Set threshold at 20-2x

Total ticks until cycle repeats: 1 + 2x
Total shreds until cycle repeats: 1 + x

Total ticks per shred: (1+2x)/(1+x)

Chart:

X			0	1	2	3	4	5	6	7	8	9
Threshold		20	18	16	14	12	10	8	6	4	2
Ticks to Repeat		1	3	5	7	9	11	13	15	17	19
Shreds to Repeat	1	2	3	4	5	6	7	8	9	10
Shreds/Tick		1	1.5	1.67	1.75	1.8	1.83	1.86	1.875	1.89	1.9
Mana./Shred		829	414.5	276.3	207.25	165.8	138.17	118.43	103.6	92.1	82.9


Please limit the conversation below to powershifting topics, I'll try to keep this updated with the latest developments. Some topics to flesh out include:
-- are the thresholds correct?
-- tactics for misses/dodges in the cycle?
-- mana sustainability for fights (i.e. when do you have to potion? how much will consumables help? which shifting cycle can you maintain after X consumables?)
-- estimated DPS of potential abilities

Tons to talk about given that every kitty should be macroing in the near future.

#2 Maeltne

Maeltne

    Piston Honda

  • Members
  • 134 posts

Posted 16 May 2008 - 08:15 PM

Special thanks to Malthoreniel (I *never* would have thought of this myself)

I'm kinda anti-addon'ish for macroable abilities, but will completely overcome this disability the moment I find a simple add-on that can check if you are stunned (assuming this cannot be reasonably done in < 50 characters in a macro).

My current macros:

/run local c=DEFAULT_CHAT_FRAME if pws then pws=false c:AddMessage("Powershift disabled",1,1,1) else pws=true c:AddMessage("Powershift enabled",1,1,1)end

This will turn on/off the powershifing component of the following attacks. Turn on to improve raid DPS, turn off for long farming sessions, etc.

#showtooltip
/run if pws then local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>14 or not IsUsableSpell(f) or CancelPlayerBuff(f) end
/cast [form] Mangle (Cat)()
/stopmacro [form]
/use [alt] item:22838
/cast Cat Form

This will powershift, if possible/enabled and your energy is less than 15, and use a Haste Potion (if Alt is held). Otherwise it will simply Mangle

#showtooltip
/run if pws then local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>15 or not IsUsableSpell(f) or GetComboPoints()>3 or CancelPlayerBuff(f) end
/cast [form] Shred
/stopmacro [form]
/use [alt] item:22838
/cast Cat Form

This will powershift, if possible/enabled and your energy is less than 16, and have less than 4 combo points; and use a Haste Potion (if Alt is held). Otherwise it will simply Shred.

#showtooltip
/run if pws then local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>9 or not IsUsableSpell(f) or CancelPlayerBuff(f) end
/use 13
/use 14
/cast [form] Rip
/stopmacro [form]
/cast Cat Form

This will powershift, if possible/enabled and your energy is less than 10. Otherwise it will simply Rip. In either case it will activate both of your trinkets.

#3 sal

sal

    Von Kaiser

  • Members
  • 63 posts

Posted 16 May 2008 - 08:59 PM

could someone reference to appropriate values dependent on set bonuses such as mangle for optimal dps. I am looking at how 2T6 would affect the best option.

Would also like to see some potion's integrated into examples if at all possible. For late sunwell I am greatly interested in comparing mana potions to haste potions for dps.

Thank you,

#4 Dev93L

Dev93L

    Von Kaiser

  • Members
  • 67 posts

Posted 16 May 2008 - 09:00 PM

Fantastic, thank you very much for all of your hardwork and implementation. I have a feral druid alt and these will be wonderful.

#5 oldmandennis

oldmandennis

    Don Flamenco

  • Members
  • 375 posts

Posted 16 May 2008 - 09:06 PM

Wait what?

You can have conditionals like that in macros? I thought those were eliminated a while ago. Enjoy it while you can, I'm sure bliz will be fixing it soon.

#6 roquer

roquer

    Von Kaiser

  • Members
  • 49 posts

Posted 16 May 2008 - 09:13 PM

I've found that about once an hour or so the macro will leave me in caster form as if the GCD wasn't expired yet. However, the macro has to be spammed in order to not waste energy ticks. It this a result of client side lag? Is there any solution to this issue?

#7 Mijae

Mijae

    Don Flamenco

  • Members
  • 443 posts

Posted 16 May 2008 - 10:30 PM

I've been trying to analyze some cycle changes to a fully maximized powershifting cycle. A max burst could be simply powershift->tick->Shred repeated. However, this results in an 18 energy lost every shift. Based on global cooldown, it seems that a maximum of 3 shifts is possible in a 12 second cycle. That's 54 lost energy.

The adjusted cycle I'm theorycrafting is weaving Mangles between Shreds to utilize some of that lost energy.

00.0 38 Tick
00.5 _8 Rip
01.5 40 Shift
02.0 60 Tick
02.5 18 Shred
04.0 38 Tick
04.5 _3 Mangle
05.5 40 Shift
06.0 60 Tick
06.5 18 Shred
08.0 38 Tick
08.5 03 Mangle
09.5 40 Shift
10.0 60 Tick
10.5 18 Shred
12.0 38 Tick
12.5 _8 Rip

If energy is less than 18 then powershift, if energy is greater than 42 then Shred, if energy is greater than 35 then Mangle.

Edit: Removed conditional shred/mangle macro idea. If it were possible, I'm sure it would be against lua.

By adding a second Mangle, it should no longer need to immediately follow Rip. This does, of course, break trying to get Super Rips.

#8 caelus

caelus

    Glass Joe

  • Members
  • 12 posts

Posted 16 May 2008 - 11:47 PM

The ferals in my guild have started using them and have seen close to 200dps increase (since they were too lazy to powershift before). It seems like using these macros constantly will drive dps up alot but drains mana like crazy. We now hear ferals asking for blessing of wisdom.

#9 zimira

zimira

    Von Kaiser

  • Members
  • 53 posts

Posted 17 May 2008 - 12:07 AM

Mijae, you forgot that shifting resets the energy ticker. And
/cast [form,modifier] Rip; [form] Shred
/cast [form] Mangle (Cat)()
simply dont work, if shred fails the macro will stop (or maybe its trying to cast an abiltity invokes a short gcd that makes the mangle a "spell not ready"). This is pretty much the old macros with multiple abilities in one used to work.

#10 Ehani

Ehani

    Glass Joe

  • Members
  • 2 posts

Posted 17 May 2008 - 12:25 AM

A significant thing to remember if you're getting really into macros is that TrinityBars2.0 allows you to make macros that are up to something like 5000 characters long. I'm willing to bet that there are other addons that will let you do this without replacing your Action Bars. This allows for some really nifty things. For example, here's my general Bear Form macro, weighing in at a hefty 781 characters:

#showtooltip [modifier:shift] Enrage; Dire Bear Form
/cast [stance:1,modifier:shift] Enrage
/stopmacro [stance:1,modifier:shift]
/cast [nostance] Dire Bear Form
/stopmacro [nostance]
/equip [stance:1] Pillar of Ferocity
/equip [stance:1] Idol of Terror
/script local f="Dire Bear Form" local gcd=GetSpellCooldown(f)>0 or not IsUsableSpell(f); if not gcd then CancelPlayerBuff("Dire Bear Form") CancelPlayerBuff("Cat Form") CancelPlayerBuff("Travel Form") end;
/script local f="Dire Bear Form" local gcd=GetSpellCooldown(f)>0 or not IsUsableSpell(f); if not gcd then CancelPlayerBuff("Swift Flight Form") CancelPlayerBuff("Moonkin Form") CancelPlayerBuff("Tree Form") end;
/stopmacro [stance]
/cast [nostance] Dire Bear Form
/equip [nostance] Pillar of Ferocity
/equip [nostance] Idol of Terror

I'll explain in pseudo-code...
if (in Bear Form with "shift" held down)
     /cast Enrage
     /stopmacro
elseif (in caster form)
     /cast Bear Form
     /stopmacro
elseif (in Bear Form)
     /equip Bear staff
     /equip Bear Idol
     #Note that if this actually causes a weapon swap, it puts you on GCD
elseif ("Bear Form" spell not on cooldown and you have mana to cast it)
     /cancelaura Bear Form
     /cast Bear Form
     /equip Bear staff
     /equip Bear Idol
end

I also have a similar version for Cat Form, but you should be able to figure that out from this code. There are two quirks about this macro. First, it will pop you out of any form that you happen to be in if you try to use it while stunned or otherwise incapacitated. IsUsableSpell() doesn't seem to consider being stunned as a condition under which you can't cast a spell. Secondly, if you use this macro from caster form, it won't equip the weapons that it does at any other time that you use it. You can, however, basically double-tap the macro to shift into Bear Form and then equip weapons. If the second click is while you're still on GCD from entering Bear Form, the /equips will be the only actions performed.

The problems in most powershifting macros that this fixes are pretty cool. Firstly, you won't ever attempt to shift when you're on GCD. (Note that this can also be fixed by using a /cast !Bear Form line instead of the /cancelform /cast combination). Also, this macro won't attempt to swap your weapons if you're not on GCD and not in Bear Form. That problem with normal powershifting macros caused me a lot of trouble in Arenas where I'd be clicking my shift button while I was on GCD, so I'd wind up extending the GCD by another 1.5 seconds. (Equipping weapons in combat causes a GCD from the instant the /equip command was sent, even though you can do the equipping while you're already on GCD).

#11 Mijae

Mijae

    Don Flamenco

  • Members
  • 443 posts

Posted 17 May 2008 - 12:38 AM

Mijae, you forgot that shifting resets the energy ticker. And
/cast [form,modifier] Rip; [form] Shred
/cast [form] Mangle (Cat)()
simply dont work, if shred fails the macro will stop (or maybe its trying to cast an abiltity invokes a short gcd that makes the mangle a "spell not ready"). This is pretty much the old macros with multiple abilities in one used to work.

I commented that was pseudo code and didn't expect it to work as-is. It's not like "/shift" actually does anything.

Also, I'm still investigating the how powershifting actually affects the energy timer. I originally had a comment about this in my post, but I guess I removed it. I'm not so sure it does reset it though. When I watch my energy ticker, it never goes the full duration to get the next tick. If anyone has some conclusive evidence either way, it would be helpful. I'm planning on doing testing tonight.

If this is the case, might be the only way to fully utilize more than one shift per cycle, and definitely for more than 2 (unless longer than 12 second cycles).

#12 Valerian

Valerian

    King Hippo

  • Members
  • 590 posts

Posted 17 May 2008 - 06:56 AM

Also, I'm still investigating the how powershifting actually affects the energy timer. I originally had a comment about this in my post, but I guess I removed it. I'm not so sure it does reset it though. When I watch my energy ticker, it never goes the full duration to get the next tick. If anyone has some conclusive evidence either way, it would be helpful. I'm planning on doing testing tonight.


I think I mentioned this in the main feral druid megathread. In an ideal situation my regular powershifting looked like

Energy ticks over
immediately Use anattack
1 sec
Powershift

If done properly this would have the powershift occur when the energy ticker was halfway through a tick. For the one Im using (old energy watch) the ticker itself does not reset upon a shift (i.e., it continues "ticking" through the shift without pause). As such the tick after the powershift almost always occurs when the bar is again halfway through. The implication here being that it still takes the full 2 seconds to get the energy rather than the 1 sec it would take if the counter didnt reset.

#13 glowacks

glowacks

    Piston Honda

  • Members
  • 147 posts

Posted 17 May 2008 - 08:12 AM

Wait what?

You can have conditionals like that in macros? I thought those were eliminated a while ago. Enjoy it while you can, I'm sure bliz will be fixing it soon.


I've been wondering this myself. I didn't think it was possible for a macro to make a decision about what to do while in combat based on how much energy(/rage/mana) you had, only on those few conditionals that Blizzard gave you (what form you're in, what you have equipped, whether your target is friendly, etc). I only know the basics of macro writing and so don't know what's going on in those scripts, so I really don't know what's going on to allow you to bypass this supposed restriction.

#14 raffy

raffy

    Piston Honda

  • Members
  • 111 posts

Posted 17 May 2008 - 10:08 AM

Latest Version of FeralKit:
http://oldschoolwow.com/FeralKit.zip

Read Me:
http://oldschoolwow....alKitReadMe.txt

#15 ecopsorn

ecopsorn

    Glass Joe

  • Members
  • 21 posts

Posted 17 May 2008 - 10:41 AM

Latest Version of FeralKit:
http://oldschoolwow.com/FeralKit.zip

Read Me:
http://oldschoolwow....alKitReadMe.txt


Will you plan to make this addon work for other clients than English as well? I'm playing on a German client on which this addon doesn't work. So far I stick with the plain makros, but I admire your work with the addon!

That's why it would be great to make it accessable also for other languages ;)

#16 Mijae

Mijae

    Don Flamenco

  • Members
  • 443 posts

Posted 17 May 2008 - 10:47 AM

Raffy, just doing some testing with Mangle spamming the macro:

#showtooltop Mangle (Cat)()
/run ps(15)
/cast [noform] Cat Form; Mangle (Cat)()
I noticed the following output:

Edgy's FeralKit: 0 energy wasted.
Edgy's FeralKit: 0 energy wasted over 1 shift.
Edgy's FeralKit: 12 energy wasted.
Edgy's FeralKit: 11 energy wasted.
Edgy's FeralKit: 23 energy wasted over 2 shifts (11.5 energy per shift).
Edgy's FeralKit: 15 energy wasted.
Edgy's FeralKit: 15 energy wasted over 1 shift.
[B]Edgy's FeralKit: 16 energy wasted.[/B]
Edgy's FeralKit: 16 energy wasted over 1 shift.

My threshold was set to 15 and I got a powershift at 16?

#17 Sadirin

Sadirin

    Von Kaiser

  • Members
  • 57 posts

Posted 17 May 2008 - 02:13 PM

I tested the mangle-macro with the immortal mobs in the blasted lands at the dark portal and got some strange numbers.

used macro:
#showtooltip
/cast [stealth] Pounce
/run if pws then local f="Cat Form";f=GetSpellCooldown(f)>0 or UnitMana('player')>14 or not IsUsableSpell(f) or CancelPlayerBuff(f) end
/cast [form] Mangle (Cat)()
/stopmacro [form]
/use [alt] item:22838
/cast Cat Form

Trinkets & amulettes: shattered sun, shard, dragonspine

Normal cat equipment, lvl 57 mob, around 10min of battle, NO Powershifting (for control)
875 DPS, 40x Bloodlust (2T4), 15 Clearcasting (Omen of Clarity), 11 to 13 trinket/amulett-procs

Test 1, same setup, WITH powershifting macro
864 DPS, 19x Furor (Shift), 32x Bloodlust (2T4), 21 Clearcasting (Omen of Clarity), 8 to 12 trinket/amulett-procs

Test 2, same setup, WITH powershifting macro
866 DPS, 19x Furor (Shift), 42x Bloodlust (2T4), 21 Clearcasting (Omen of Clarity), 12 to 13 trinket/amulett-procs

=> I got hundreds of extra energy and doing less damage? Why? Coincidence? Not enough time to get viable results? Or was the test setup not good, because i was just spamming mangle (which brought me to 0 mana in seconds). Or are these macros just usable with a wolfshead helm?

#18 Deninkle

Deninkle

    Glass Joe

  • Members
  • 17 posts

Posted 17 May 2008 - 03:31 PM

It seems counter-intuitive that you would get less dps with more energy. However, to be sure it might be a good idea to record how many white/specials you use and how many of them were hits/misses/crits.

Who knows why it went down? Firstly, were you using 2t6 so that mangle has an energy requirement of 35? Astrylian said that when he spam tested powershifting on some ogres that his hit timer didn't reset, so it would be great to get more evidence for this.

#19 Sadirin

Sadirin

    Von Kaiser

  • Members
  • 57 posts

Posted 17 May 2008 - 04:16 PM

No 2T6, just 2T4 and badge equipment.
Stats: 3625 AP, 42,35% Crit, 137 Hit, 11 Expertise
Recording: recap 4.04

Test 1 (NO powershifting macro): fight time 9min 40sec, 332 melee hits, 269 melee crits (44,8%), 96 mangle hits, 94, mangle crit (49,5%), no misses

Test 2: (WITH powershifting macro): fight time 9min 40sec, 307melee hits, 237 melee crits (43,6%), 100 mangle hits, 31 mangle crit (44,8%), no misses

Test 3: (WITH powershifting macro): fight time 8min 53sec, 327 melee hits, 296 melee crits (47,5%), 119 mangle hits, 85 mangle crit (41,7%), no misses

Yes, small differences in fight time, but it should not make such a huge difference in DPS, or?

#20 raffy

raffy

    Piston Honda

  • Members
  • 111 posts

Posted 17 May 2008 - 05:09 PM

Raffy, just doing some testing with Mangle spamming the macro:

#showtooltop Mangle (Cat)()
/run ps(15)
/cast [noform] Cat Form; Mangle (Cat)()
I noticed the following output:

Edgy's FeralKit: 0 energy wasted.
Edgy's FeralKit: 0 energy wasted over 1 shift.
Edgy's FeralKit: 12 energy wasted.
Edgy's FeralKit: 11 energy wasted.
Edgy's FeralKit: 23 energy wasted over 2 shifts (11.5 energy per shift).
Edgy's FeralKit: 15 energy wasted.
Edgy's FeralKit: 15 energy wasted over 1 shift.
[B]Edgy's FeralKit: 16 energy wasted.[/B]
Edgy's FeralKit: 16 energy wasted over 1 shift.

My threshold was set to 15 and I got a powershift at 16?


Redownload the code, you have an old version that didn't support passing the threshold via macro interface (its probably using the default in /fk ps energy which is 18.) The newer code also makes a bit more sense, powershifts report the net gain of energy, so it's a bit more logical.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users