Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Class Mechanics » Druids

Closed Thread
 
LinkBack Thread Tools
Old 12/16/09, 3:31 AM   #16
Leafkiller
Piston Honda
 
Worgen Druid
 
Stormrage
Bkim,

I like the format you posted - it is easier to follow the logic and also get it verified by SimulationCraft.

I tested your script and I am seeing too many FBs. I believe the problem is here:

                # actions+=/ferocious_bite,cp>=5,time_to_die<=6
		if ComboPoints(more 4) {
			if CheckBoxOn(TTD) if TargetDeadIn(less 6) Spell(BITE)
			if CheckBoxOff(TTD) Spell(BITE)
		}
which should probably read
                # actions+=/ferocious_bite,cp>=5,time_to_die<=6
		if ComboPoints(more 4) {
			if CheckBoxOn(TTD) if TargetDeadIn(less 6) Spell(BITE)
		}
It does not seem correct to bite if we are not calculating TTD.

I noticed two other things:

There is no test for Berserk active on the condition for FB:
		# actions+=/ferocious_bite,cp>=5,rip>=10
		if ComboPoints(more 4) {
			unless TargetDebuffExpires(RIP 10 mine=1) Spell(BITE)
		}
Seems like there should be an additional test before doing a FB to ensure that Berserk is not active and/or close to finishing.

The placement of the OOC check near the bottom of the logic results in very few shreds on OOC procs. Both of these could be questions for simulator more than the script but they do represent a change in cycle priority.

Offline
Old 12/16/09, 5:06 AM   #17
Furion
Don Flamenco
 
Furion's Avatar
 
Tauren Druid
 
Blutkessel (EU)
Originally Posted by bkim View Post
Here is another way to write it. It copies exactly the SimulationCraft logic and action order.
Well, first, thanks for your effort. However, as leafkiller pointed out partly already, there is a problem with that. Of course that's how I started out trying to write the script as well. Unfortunately it isn't that easy, though, as the ovale and simcraft logic are apparently quite different beasts. It doesn't deliver the correct results as the script will not execute the actions in the right priority thus I had to change a lot of stuff (especially brackets) around trying to preserve what the simcraft settings actually mean in ovale language instead of translating them literally.

Please ensure that your own script has undergone a minimum amount of testing before presenting it as an alternative to mine, which it isn't, unless it produces the same DPS (I did test it but not for long as it wouldn't suggest rake at all).

However, I hope I didn't sound too rude. If you improve on your script in a way that it produces better DPS than mine I will gladly hand this project over to you (or someone else with more knowledge than me). The only reason I wrote this script was because there were no good alternatives and someone had to get the ball rolling, not because I think that I am in any way exceptionally good at it.

On another note: I am also not sure if it's a good idea to tie the script to simcraft forever in the way you seem to be suggesting.
What I am aiming for is the best possible DPS result ingame and not mimicing simcraft in the best possible way, which are two different goals. Maybe I should clarify my OP in regard to that.

Offline
Old 12/16/09, 5:18 AM   #18
druzen
Glass Joe
 
Tauren Druid
 
Runetotem (EU)
Is it possible to display the abilities as a small priority list with 2-3 elements? I would also like to have a list of my cooldowns with their status (yes, I am FBN addicted).

Offline
Old 12/16/09, 6:35 AM   #19
babysnake
Glass Joe
 
Human Warrior
 
Auchindoun (EU)
Alev/Toooskies is optimizing the Simulationcraft action list in this issue: Issue 142 - simulationcraft - Feral druid action list tweaks - Project Hosting on Google Code

Might be nice to keep an eye on that while optimizing these Ovale scripts.

Offline
Old 12/16/09, 8:00 AM   #20
Furion
Don Flamenco
 
Furion's Avatar
 
Tauren Druid
 
Blutkessel (EU)
Originally Posted by babysnake View Post
Might be nice to keep an eye on that while optimizing these Ovale scripts.
Yes that seems like a helpful discussion and actually deals with the things I have been wondering myself. I'll have a close look at it and see what may improve my script.

Originally Posted by druzen View Post
Is it possible to display the abilities as a small priority list with 2-3 elements? I would also like to have a list of my cooldowns with their status (yes, I am FBN addicted).
Well it's easily possible to make 1 Icon for each berserk and TF (bkim's script does just that) and show the cooldown of each all the time (just change "nocd=1" to "nocd=0").
However I'm quite happy with my current implementation as I still have the spells on my action bar to seek out additional info if I want it. You could also use an additional addon for tracking these or adjust the script manually.
In the end it's a choice of design philosophy: I don't want to bloat the center of my screen with info I don't need most of the time so I guess I won't implement that into the main script for now. I might add that option at some point although I am skeptical about that as I want to keep the script as small and easy to handle as possible as that was one of the main reasons I switched away from FBN and that is the reason why it currently doesn't offer any ingame options at all. The more I put into this script the harder it will be to modify it later on so my current view is that I need to be quite picky and concentrate on the core issues.

I am not too interested in a long priority list either, as that isn't quite how the feral rotation works: Thanks to OOC procs we can never plan ahead currently. I know FBN had that option but it just kept confusing me as it often made future suggestions which turned out to be wrong 2 seconds later and I think it's better to keep one in the dark than raising false expectations.

More remarks to add to the OP I guess.

Offline
Old 12/16/09, 9:50 AM   #21
Furion
Don Flamenco
 
Furion's Avatar
 
Tauren Druid
 
Blutkessel (EU)
V 1.4: Improved readability, fixed 2 little errors and optimized bite usage during berserk more.

Offline
Old 12/16/09, 10:16 AM   #22
Allev
King Hippo
 
Allev's Avatar
 
Tauren Druid
 
Mal'Ganis
Yeah, that would be me working on those scripts. Most things I report to the SimulationCraft threads in this forum, as there are lots of variables to check which I can't test all by myself.

Currently I'm very busy at work and need a new SC release to continue making improvements, which is this weekend at earliest.

Offline
Old 12/16/09, 10:47 AM   #23
bkim
Glass Joe
 
Tauren Druid
 
Frostwolf
Thanks for the feedback. I didn't mean any disrespect or intend on taking over the project. I do appreciate your hard work and sharing it with the community. I had actually installed your script and was wondering why it wasn't suggesting RAKE until I had rewritten it and realized it's because most of the training dummies are at 1/1 HP. Might be the same reason for you guys why mine didn't suggest rake.

I did testing last night and it seemed accurate but I do see that it's ignoring berserk and suggesting things like bite.

Keep going man! I do think though that Tiger's Fury and Berserk suggest should be added to the script but with a checkbox to toggle it on/off for those who want it.

Edit:

Ran your script, works great! I did notice though that it doesn't always suggest Shred on omen procs.

Last edited by bkim : 12/16/09 at 10:56 AM.

Offline
Old 12/16/09, 11:07 AM   #24
Furion
Don Flamenco
 
Furion's Avatar
 
Tauren Druid
 
Blutkessel (EU)
Originally Posted by bkim View Post
I had actually installed your script and was wondering why it wasn't suggesting RAKE until I had rewritten it and realized it's because most of the training dummies are at 1/1 HP. Might be the same reason for you guys why mine didn't suggest rake.
I double checked that the dummy was at several million hp and my script would suggest rake while yours wouldn't. Just tested it another time to be on the safe side.

Originally Posted by bkim View Post
Ran your script, works great! I did notice though that it doesn't always suggest Shred on omen procs.
That is true however that behaviour is actually intended currently.

Issue 142 - simulationcraft - Feral druid action list tweaks - Project Hosting on Google Code
"Shred on clearcast is a myth, except when it randomly procs"

An earlier version had shred (or mangle if it was down) on every clearcast

Currently the script should recommend shred on OOC procs when there is nothing with higher priority to do like rip/rake/mangle/fb. But feel free to correct me on that.

Offline
Old 12/16/09, 11:35 AM   #25
bkim
Glass Joe
 
Tauren Druid
 
Frostwolf
Ah ok my mistake. I was thinking of the myth.

Offline
Old 12/16/09, 11:46 AM   #26
Hakana4155
Glass Joe
 
Tauren Druid
 
Stormscale
Thanks for the work you put into this. I started using it last night and its great.

One question though. I want to add Barkskin into the CD box for when I tank. Where do you get the number that goes into the Define statement. I.e. Define(FF 770), where can I find that Faire Fire had the ID of 770?

edited: changed FFF to FF for the spell ID

Last edited by Hakana4155 : 12/16/09 at 12:26 PM.

Offline
Old 12/16/09, 12:20 PM   #27
Munorion
Piston Honda
 
Night Elf Druid
 
Silvermoon (EU)
It's the spell ID which you can get when you look the spell up at e.g. Wowhead: Faerie Fire - Spell - World of Warcraft (the "spell=770" at the end of that link).
Although it seems that 770 is the regular FF, the feral version seems to have ID 16857.


Offline
Old 12/16/09, 12:52 PM   #28
coldbear
Piston Honda
 
coldbear's Avatar
 
Night Elf Druid
 
Ravenholdt
Just starting to try to figure out this script language (switched from FbN an hour ago) and noticed that this script will recommend Mangle the moment it falls off. Would it be possible to set that recommendation at 0.5 seconds _before_ it falls off as I'd rather not get caught in a GCD?

The alternative, of course, is to just keep an eye on a buff/debuff tracker addon in conjunction with the script, as I'm sure most of us are already.


Offline
Old 12/16/09, 1:11 PM   #29
bkim
Glass Joe
 
Tauren Druid
 
Frostwolf
Originally Posted by coldbear View Post
Just starting to try to figure out this script language (switched from FbN an hour ago) and noticed that this script will recommend Mangle the moment it falls off. Would it be possible to set that recommendation at 0.5 seconds _before_ it falls off as I'd rather not get caught in a GCD?

The alternative, of course, is to just keep an eye on a buff/debuff tracker addon in conjunction with the script, as I'm sure most of us are already.

You can change the following line
unless {TargetDebuffPresent(MANGLE) or TargetDebuffPresent(MANGLEB) or TargetDebuffPresent(TRAUMA)} Spell(MANGLE)
to

if {TargetDebuffExpires(MANGLE 1) or TargetDebuffExpires(MANGLEB 1) or TargetDebuffExpires(TRAUMA 1)} Spell(MANGLE)
I don't know if you can enter 0.5 but replace the 1's with 0.5 and give it a try.

Offline
Old 12/16/09, 2:16 PM   #30
Leafkiller
Piston Honda
 
Worgen Druid
 
Stormrage
Originally Posted by Furion View Post
On another note: I am also not sure if it's a good idea to tie the script to simcraft forever in the way you seem to be suggesting.
I am not convinced this is true. From what I can see Ovale does execute the code in a way that is consistent with how Bkim wrote his script i.e. how the logic is expressed in the simulator. You did not see Rake due to a bug in the script that has to do with the time to die option Bkim included. Once I fixed that Rake was suggested correctly with that option on. Specifically:
		# actions+=/rake,time_to_die>=9
		if TargetDebuffExpires(RAKE 0 mine=1) {
			if CheckBoxOn(TTD) if TargetDeadIn(less 10) Spell(RAKE)
			if CheckBoxOff(TTD) Spell(RAKE)
		}
Should be:
		# actions+=/rake,time_to_die>=9
		if TargetDebuffExpires(RAKE 0 mine=1) {
			if CheckBoxOn(TTD) unless TargetDeadIn(less 10) Spell(RAKE)
			if CheckBoxOff(TTD) Spell(RAKE)
		}
Also, one of the things that is handled by the this script is the case where it is desirable to refresh SR early (in this snippet):

		# actions+=/savage_roar,cp>=5,savage_roar<=6,rip>=6
		if {ComboPoints(more 4) and BuffExpires(ROAR 6)} {
			unless TargetDebuffExpires(RIP 6) Spell(ROAR)
		}
Given the variability of RNG it is not possible for us to measure dps by doing test runs on dummies. The most we can do is to watch the cooldowns and make a judgment call on whether or not the move selector is making logical suggestions. We need simulators to execute 1000s of runs to measure small improvements in DPS - and if the Ovale code can mirror the sim code we are more likely to benefit from small dps improvements in the algorithm.

Offline
Closed Thread

Go Back   Elitist Jerks » Class Mechanics » Druids

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Optimal Raid Warrior Threat Rotation Daavlod Class Mechanics 14 02/05/09 9:32 AM
Optimal rotation; theory vs reality Balog Public Discussion 31 11/19/08 7:31 PM