There is a problem with computing the correct amount of Rip damage that I've noted in Ovale ticket 161.Leafkiller wrote:From now on, depending on the rotation, I am going to need to know the damage coefficients for all three DoTs...Thrash, Rip and Rake.
Leafkiller's 5.04 Feral/Guardian Ovale Script
Moderator: Forum Administrators
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
-
- Exalted
- Posts: 1180
- Joined: Fri Jun 04, 2010 4:28 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
@Jeshu
Since BitW does not snapshot stats on FBs, we are trying to make sure we have an optimized Rip (TF and DoC) to carry through the last 25%. Here is an example line from simc:
actions+=/natures_swiftness,if=combo_points>=5&$(ttBitW)<16&buff.tigers_fury.up&buff.dream_of_cenarius_damage.down&buff.predatory_swiftness.down
How would I calculate "(time until health is 25%) < 16 seconds"?
I also need to make sure that time to die is large enough that I know this is not an add - and probably make a checkbox to disable this for fights with lots of target swaps...
Edit: We took the lines that tried to anticipate BiTW ahead of time out of the script so don't worry about my question and certainly don't try to code anything for it.
Since BitW does not snapshot stats on FBs, we are trying to make sure we have an optimized Rip (TF and DoC) to carry through the last 25%. Here is an example line from simc:
actions+=/natures_swiftness,if=combo_points>=5&$(ttBitW)<16&buff.tigers_fury.up&buff.dream_of_cenarius_damage.down&buff.predatory_swiftness.down
How would I calculate "(time until health is 25%) < 16 seconds"?
I also need to make sure that time to die is large enough that I know this is not an add - and probably make a checkbox to disable this for fights with lots of target swaps...
Edit: We took the lines that tried to anticipate BiTW ahead of time out of the script so don't worry about my question and certainly don't try to code anything for it.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Let TTD = TargetTimeToDie() and H = TargetHealthPercent(). At any given time, Ovale estimates that it takes TTD seconds to remove H amount of health from the target, which means the rate of damage is H/TTD health per second.Leafkiller wrote:How would I calculate "(time until health is 25%) < 16 seconds"?
Time until health is 25% = (25 * TTD / H) seconds
-
- Posts: 5
- Joined: Mon Mar 22, 2010 9:25 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I had a go at tanking with the script over the weekend and Savage Defence didn't seem to be working as I'd expected it to. It was asking me to refresh Savage Defence before the 6 second buff had finished on a very regular basis, to the extent that I started to ignore it. I didn't have time to try and see if I could spot anything that might have caused this odd behaviour unfortunately, but thought I'd bring it up.
- Tinderhoof
- Exalted
- Posts: 2234
- Joined: Mon May 24, 2010 10:21 pm
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
What you are seeing is expected. When you hit Savage Defense with the buff still up it is just extended by 6 seconds. Spamming SD like this won't hurt your uptime at all. Also remember that the script is just letting you know you have enough rage for SD and that SD is available. If you don't want to use SD because you know you need to save it for a big hit you can an ignore the suggestion and spend it on something else (Maul, FR). Be aware now that we are swimming in rage (85 only) so you will be able to cap out on SD max uptime VERY easy.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I apologize if this is simply not the place for reporting the problem. Please let me know. I didn't see an obvious post dictating where bugs should be reported.
I'm seeing an issue with SavageRoar always appearing in ovale. I reset ovale to the default script to make sure it wasn't a bug with ovale. From what I can tell, it appears to work properly. Which means there must be an issue with ovale in conjunction with Leafkiller's script.
A) is anyone else seeing this issue or is it something on my end? (haven't done the "clear wtf files" bit yet.)
B) is there something up with how BuffRemains() is working? or is the SAVAGEROAR define somehow incorrect now? Just doing some initial guesswork as to what might be wrong.
I'm seeing an issue with SavageRoar always appearing in ovale. I reset ovale to the default script to make sure it wasn't a bug with ovale. From what I can tell, it appears to work properly. Which means there must be an issue with ovale in conjunction with Leafkiller's script.
A) is anyone else seeing this issue or is it something on my end? (haven't done the "clear wtf files" bit yet.)
B) is there something up with how BuffRemains() is working? or is the SAVAGEROAR define somehow incorrect now? Just doing some initial guesswork as to what might be wrong.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
So if I am understanding how the script works correctly it looks like the Define for SAVAGEROAR is incorrect.
the default script uses a different value --
I changed the value in leafkiller's to 52610 and that seemed to fix it. Please tell me if this is incorrect in anyway.
the default script uses a different value --
Code: Select all
Define(savage_roar 52610)
SpellInfo(savage_roar duration=12 combo=0 energy=25 )
SpellAddBuff(savage_roar savage_roar=1)
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I've just tagged Ovale 5.0.4. This version should makes things a bit easier for writing druid scripts.
The changes for Ferals:
The changes for Ferals:
- For finishers that consume all of their combo points, you should use combo=0 instead of combo=-5 in the SpellInfo() for that finisher. The only exception is Savage Roar if Glyph of Savagery is present. Usually, you can't do a finisher with 0 CPs and Ovale assumes that is always true. So, for Savage Roar, you can do:
The second SpellInfo() will overwrite any matching parameters that were set in the first SpellInfo().
Code: Select all
Define(savage_roar ...) SpellInfo(savage_roar combo=0) SpellInfo(savage_roar combo=-5 glyph=glyph_of_savagery) Define(glyph_of_savagery ...)
- Use the Damage(id) and LastSpellEstimatedDamage(id) conditions. For example, you can add SpellInfo() for Rip that looks like:
With the above information, you can use Damage(rip) as a script condition returning a number that's computed as:
Code: Select all
Define(dream_of_cenarius_damage 108381) SpellInfo(dream_of_cenarius_damage duration=30) Define(rip 1079) SpellInfo(rip duration=16 energy=30 tick=2 combo=0) SpellInfo(rip base=113 bonuscp=320 bonusapcp=0.3872) # damage coefficients SpellAddTargetDebuff(rip rip=1) SpellDamageBuff(rip dream_of_cenarius_damage=1.25)
You can also use LastSpellEstimatedDamage(rip) to get the snapshotted damage estimate of the last Rip. Note that these estimates won't include the damage multipliers for mastery effects.Code: Select all
Damage(rip) == { 113 + (320 * CP) + (0.3872 * AP * CP) } * DamageMultiplier(rip)
- SpellCharges(id) can be used to get the remaining number of charges on Savage Defense.
- SpellChargeCooldown(id) can be used to get the remaining cooldown before gaining another charge of the spell.
- target.IsAggroed() can be used to to check if the target's primary target is the player. This will return true even if the target looks at someone else to cast a spell on him before turning back to the tank. Basically, this condition lets you know if you're tanking the target or not, and can be used on boss fights with a tank swap to suggest using Maul over Savage Defense.
-
- Exalted
- Posts: 1180
- Joined: Fri Jun 04, 2010 4:28 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Ok, I just did a test. If I remove the glyph of Savagery, the spell ID for the Savage Roar buff is 52610. If I have the Glyph of Savagery, regardless of the number of combo points used for the Savage Roar, the spell ID for the Savage Roar is 127538. So I am 99% sure your issue is that you are not using the Glyph of Savagery.bando wrote:So if I am understanding how the script works correctly it looks like the Define for SAVAGEROAR is incorrect.
the default script uses a different value --I changed the value in leafkiller's to 52610 and that seemed to fix it. Please tell me if this is incorrect in anyway.Code: Select all
Define(savage_roar 52610) SpellInfo(savage_roar duration=12 combo=0 energy=25 ) SpellAddBuff(savage_roar savage_roar=1)
I can change the script to detect the presence/absence of the Glyph of Savagery, but the script (and the simulationcraft rotation) are based on this Glyph being present.
-
- Exalted
- Posts: 1180
- Joined: Fri Jun 04, 2010 4:28 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
@Jeshu
I am going to be working on the level 90 script over the next week. I want something ready before MoP, but I am somewhat dependent on getting the rest of the talents optimized in the simc script (some combination of time spent by myself and aggixx).
I am anticipating coming back to you with questions along the way. I am not sure what I will be able to get tested over the next week though. Depends on beta availability and also having Tinder around since I don't have a level 90 on Beta...so it may wait until I hit 90 on live in a couple of weeks...
I am going to be working on the level 90 script over the next week. I want something ready before MoP, but I am somewhat dependent on getting the rest of the talents optimized in the simc script (some combination of time spent by myself and aggixx).
I am anticipating coming back to you with questions along the way. I am not sure what I will be able to get tested over the next week though. Depends on beta availability and also having Tinder around since I don't have a level 90 on Beta...so it may wait until I hit 90 on live in a couple of weeks...
- Tinderhoof
- Exalted
- Posts: 2234
- Joined: Mon May 24, 2010 10:21 pm
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I have been really MIA the last week due to work ramping up for a ship cycle and some general burn out. I will be around this week a bit more and ready to help you test.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
It should be possible to test a DoC script at level 85 with some strategic edits so that it acts like you do have DoC and that spells that are cast when you have DoC up are actually empowered.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Ahh, that makes sense. Thank you for the heads up. I'm going to give a shot at making a function to check for that. I may use you as a baseline of how well I'm learning the language.Ok, I just did a test. If I remove the glyph of Savagery, the spell ID for the Savage Roar buff is 52610. If I have the Glyph of Savagery, regardless of the number of combo points used for the Savage Roar, the spell ID for the Savage Roar is 127538. So I am 99% sure your issue is that you are not using the Glyph of Savagery.
I can change the script to detect the presence/absence of the Glyph of Savagery, but the script (and the simulationcraft rotation) are based on this Glyph being present.
edit: where do you find all the spell ID's?
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
For the most part, search the name of the spell on Wowhead and then look at the URL. Some spells can be a little tricky though!bando wrote:edit: where do you find all the spell ID's?
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I just looked at it as well. It's not just the buff that changes IDs, it's the spell itself. You can handle it with:Leafkiller wrote:Ok, I just did a test. If I remove the glyph of Savagery, the spell ID for the Savage Roar buff is 52610. If I have the Glyph of Savagery, regardless of the number of combo points used for the Savage Roar, the spell ID for the Savage Roar is 127538. So I am 99% sure your issue is that you are not using the Glyph of Savagery.
Code: Select all
Define(glyph_of_savagery 127540)
Define(savage_roar 127538)
SpellInfo(savage_roar duration=18 combo=0 energy=25)
SpellAddBuff(savage_roar savage_roar=1)
Define(savage_roar_glyphed 52610)
SpellInfo(savage_roar_glyphed duration=12 combo=-5 energy=25)
SpellAddBuff(savage_roar_glyphed savage_roar_glyphed=1)
SpellList(savage_roar_buff 52610 127538)
AddFunction SavageRoar
{
if Glyph(glyph_of_savagery) Spell(savage_roar_glyphed)
if Glyph(glyph_of_savagery no) and ComboPoints(more 0) Spell(savage_roar)
}
Edit1: glyphed SR needs combo=-5, not combo=0.
Edit2: Add CP check in non-glyphed SR case.
Last edited by Jeshu on Tue Sep 18, 2012 9:59 pm, edited 2 times in total.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Do I get a cookie?aggixx wrote:If I remember correctly from my messing around on beta, savage roar is still the same ID as it is on live, but Savagery has it's own spell ID that's probably the 127 number you listed. I could be wrong.
-
- Exalted
- Posts: 1180
- Joined: Fri Jun 04, 2010 4:28 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
In addition to what Jeshu wrote we would have to change the first SR conditional in the script since it does not check for combo points > 0.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
I tweaked the example code in my previous post to make SavageRoar()work a bit more seamlessly as a drop-in replacement for Spell(savage_roar).
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Was the time to die part of the script introduced already?
If so, it does not seem to work properly. Rake is being suggested at <1% on zon'ooz. Further testing right now.
SR code still seem to me way too much favored compared to rip, especially in the begining of the fight where we start with 0 CP SR from glyph and are able to RIP quite fast.
I guess if it was possible to get the script act a bit more different at the fight start to go with 0 CP SR than with 5 CP rip regardless what happens pretty much couse we are pretty guaranteed to have that 5 CP in 12sec no matter what.
If so, it does not seem to work properly. Rake is being suggested at <1% on zon'ooz. Further testing right now.
SR code still seem to me way too much favored compared to rip, especially in the begining of the fight where we start with 0 CP SR from glyph and are able to RIP quite fast.
I guess if it was possible to get the script act a bit more different at the fight start to go with 0 CP SR than with 5 CP rip regardless what happens pretty much couse we are pretty guaranteed to have that 5 CP in 12sec no matter what.
T13 http://raidbots.com/epeenbot/eu/lightni ... orcereria/
T14 http://raidbots.com/epeenbot/eu/sylvanas/sorcereria/
STREAMING 19-24 CET http://www.twitch.tv/Sorcereria PW: Django
T14 http://raidbots.com/epeenbot/eu/sylvanas/sorcereria/
STREAMING 19-24 CET http://www.twitch.tv/Sorcereria PW: Django
-
- Exalted
- Posts: 1180
- Joined: Fri Jun 04, 2010 4:28 am
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Time to die is not in the script currently. It will be for level 90.
The Rip/SR desync code will be improved significantly in the next rev.
The Rip/SR desync code will be improved significantly in the next rev.
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
For entire nite the code looked really solid beside those little things that will hopefully get fixed. Awsome work.
T13 http://raidbots.com/epeenbot/eu/lightni ... orcereria/
T14 http://raidbots.com/epeenbot/eu/sylvanas/sorcereria/
STREAMING 19-24 CET http://www.twitch.tv/Sorcereria PW: Django
T14 http://raidbots.com/epeenbot/eu/sylvanas/sorcereria/
STREAMING 19-24 CET http://www.twitch.tv/Sorcereria PW: Django
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Ovale error: 

Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
This is fixed in Nerien's Ovale Scripts version 2.0.18.
Also, please post in Leafkiller's MoP thread regarding the current Ovale script. This is an older, abandoned thread.
Also, please post in Leafkiller's MoP thread regarding the current Ovale script. This is an older, abandoned thread.
- Tinderhoof
- Exalted
- Posts: 2234
- Joined: Mon May 24, 2010 10:21 pm
Re: Leafkiller's 5.04 Feral/Guardian Ovale Script
Locking to prevent further necros.