![]() |
Visualising the optimal cat rotation ingame
I have quit wow so if you want the OP updated either create a new thread or write me a PM as I'm still here from time to time.
In my search for an alternative to the FBN move suggester I decided to write a custom Ovale (a script-based move suggesting addon by Sidoine) script for cats. It's main goal is to produce the best DPS suggestions ingame. Apart from that ovale can be useful to visualise what simcraft does ingame so it can be a used to spot errors in simcraft profiles more easily. What I'm looking for in this thread: I am mainly looking for discussion about ovale scripts in a way that states why it does not visualize the optimal cat rotation ingame (and even better if you can explain how to fix it). Feel free to comment on any mistakes you may find but if it's based on controversial theories make sure to include or link to convincing evidence and not just post your vague feelings or preferences. I am not too interested in long-winded discussions about theorycrafting, rotation, gearing or the usefulness of this script or other tools (like simcraft), here as there are enough other threads for that. As I'm not the author of ovale or in any way affiliated with him I probably can't help you with any problems regarding the addon itself and not my script. About my script: -The numbers are mainly based on simcraft simulations -Bear in mind that a simple script also doesn't react to the current encounter. They are meant for static situations where you are wearing decent gear and do single target damage to a boss with appropriate buffs and debuffs. A script will never play the game for you. Following my script will still expect the end user to make some choices. But it's easy enough to modify to your taste and might work in other scenarios. You will need to make custom modifications if you want the perfect script for you. -The script offers only one option (Manglebot) -I currently don't think the script needs updates for the rest of wotlk -there is a bug where the movement suggestions won't show when an unattackable enemy becomes attackable (Gormok etc). Just retarget him I can't fix this. How to read the movement suggestions ingame: I'll descripe the Icons from left (1) to right (4) (1) is the main suggestion box with your main rotation. If anything is suggested here it has high priority. (2) is the filler shreds and FFF. Only follow this icon when there is nothing to do in (1) within the next ~0.5 seconds. Basically you have to treat this icon as if you had an OOC proc up (which is something every feral needs to learn anyways). (3) + (4) are only there to notify you about TF and Berserk coming off cooldown soon. Use them at your own discretion, but generally you want to use both ASAP; TF only when your energy is below 30; Berserk when your energy is around 80. If I'm not maintaining the script anymore the ovale logic is easy enough to pick up for almost anyone with a bit of dedication who might want to continue working on it. If someone wants to continue working on my script or maintain this or a new topic feel free to contact me. Special thanks to all those whose posts have helped me in tweaking my script. Faq: No bear or balance support? No. Those are in the default script that comes with ovale but will not be included here. If you really want those just copy and paste the relevant parts from the default script. Why not feature X? I will ignore most feature requests as I am taking a very minimalistic approach here, trying to keep the script as short, efficient and easy as possible. If you want a feature that not every smart person would definetly want please ask yourself wether you can't just adapt or a different addon can add the missing feature for you or feel free to modify the script to your likings yourself so I can dedicate my limited time to improving the script for everyone instead of answering personal requests. 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. But feel free to change the script in any way you like. Should be easy enough as I am trying to keep it as minimalistic as possible. How to do custom modifications? You can try Ovale - Documentation - WoW AddOns - CurseForge.com for all the available commands in ovale to optimise the script for your tastes. --------------------------------------------------------------------------------------------------------------------------------------- Alternatives: You can post your own script modifications, scripts, or discuss other scripts here, too. There is a script by Torzak that pays attention to a few details like trinket procs so it might be a source for your own custom modifications: http://elitistjerks.com/f73/t84378-v...5/#post1506709 Fatalsaint wrote a Module for Faceroller (an Addon similar to ovale) that is somewhat based on my results and should produce comparable or even higher DPS to my ovale script, however I can't verify anything as I'm not playing anymore. It should also offer more options. Faceroller Feral Druid : WoWInterface Downloads : Plug-Ins & Patches Gurrshael modified the old FBN so it is reduced to the move suggester without all the bloat, but remember the suggestions are probably outdated. Gurrshael / FBNLite / source — bitbucket.org --------------------------------------------------------------------------------------------------------------------------------------- Usage of ovale scripts: 1) Get Ovale - Addons - Curse 2) Install Ovale properly 3) Just to clarify: Whenever I update the script you will have to repeat this step to match the current version a) Copy and paste my current script ingame into interface->addons-> ovale (make sure you replace the old script) and press "accept" afterwards. b) If that doesn't work try following this alternative process: Exit WoW Delete YourWoWFolder\WTF\Account\YourAccountName\SavedVariables\Ovale.lua and Ovale.lua.bak Open YourWoWFolder\Interface\AddOns\Ovale\defaut\Druide.lua Replace the existing script in that file with mine + save the chances. 4) If everything fails make sure you have the newest version of ovale. How to use: In the newest Version there are 4 move suggesting Icons. The first from left is your main rotation the 2nd from left will tell you when shredding would be appropriate, however the first Icon has priority, you only check the 2nd icon if there is nothing to do in the first. This should be natural for a feral as it's exactly what you should be doing on an OOC proc anyways. 3rd and 4th icon will show when TF or berserk are ready soon. Here is my script: Code:
#Project: Visualising the optimal cat rotation ingame |
The script works very well. I know you said you do not want to add TF/Berserk to the main bar and I agree with Berserk but TF is so short of a cooldown that the only time that I save it is when I deviate from the normal "rotation", completely ignoring ovale (stun phase of icehowl, any aoe, ect.)
So for people who want to add TF to the main script simple add the following: if Mana(less 40) Spell(TIGER) unless BuffPresent(BERSERK) this should be added right before: if BuffPresent(OMEN) Spell(SHRED) if BuffPresent(BERSERK) Spell(SHRED priority=1) unless TargetDebuffPresent(RAKE mine=1) or TargetDeadIn(less 9) Spell(RAKE) making it look like: if Mana(less 40) Spell(TIGER) unless BuffPresent(BERSERK) if BuffPresent(OMEN) Spell(SHRED) if BuffPresent(BERSERK) Spell(SHRED priority=1) unless TargetDebuffPresent(RAKE mine=1) or TargetDeadIn(less 9) Spell(RAKE) |
You are somewhat right about TF. My reasoning might not have been too good but I stand by my conclusion. When you notice on the 2nd Icon that TF is ready you may want to spend your energy in a different way/a bit faster than the script would currently suggest. On top TF is not on the gcd so you may want to press a second button at the same time but you wouldn't know what to press if the main icon is occupied by TF.
I guess these things could be worked into the script as well, but currently I am not planning to do so myself. I might include it if someone comes up with a solution that seems to be close enough to optimal. |
Thanks for putting up this thread and creating the script. First, a couple of housekeeping suggestions for you. Wrap the script in code tags to make it easier to cut and paste and also distinguish it from the rest of your post. It will look something like this snippet:
Code:
if BuffPresent(OMEN) Spell(SHRED)I tested the version of the script you posted in the sim thread last night on ToGC 25 Twins and the one major issue I saw was several times it kept asking me to do FBs when Rip had fallen off completely. I will try to find some time to analyze the script to see if there is anything obvious that is causing that. |
If I had to guess, I'd say that you play with another feral who had rip up. In which case the line:
unless TargetDebuffPresent(RIP) Spell(RIP) maybe should be unless TargetDebuffPresent(RIP mine=1) Spell(RIP) |
I guess I'll just call the current version 1 and start counting from there. (Never really planned to release this)
I think Allev is right and I'll fix the OP. Otherwise it might be related to twin valkyrs shield mechanics as I haven't noticed any problems in my ICC and Ulduar raids this week despite having another feral with me. Maybe I'll get to test the script in Totc tomorrow. |
Just confirming - I did have another feral with me on that fight so the fixes you made look correct. I will also continue to test it in raid with the other feral using the corrected script.
|
Is it possible to add some code to accomidate other forms? Meaning the suggestion box shows up whether I'm in cat or bear form during battle, and I'd like it to not show up when I'm in my tanking spec. I'd do it myself, but I don't know the language well enough.
|
Script updated, icons wont show unless in catform. However you need to enable "hide empty buttons" in ovale options.
|
It is probably a good idea to include version number as a comment in the script itself.
The line below checks for MANGLEB and TRAUMA twice if i read it correctly. Code:
if ComboPoints(less 5) and {{TargetDebuffPresent(MANGLE) or TargetDebuffPresent(MANGLEB) or TargetDebuffPresent(TRAUMA)} or TargetDebuffPresent(MANGLEB) or TargetDebuffPresent(TRAUMA)} Spell(SHRED priority=2)Code:
if ComboPoints(less 5) and {TargetDebuffPresent(MANGLE) or TargetDebuffPresent(MANGLEB) or TargetDebuffPresent(TRAUMA)} Spell(SHRED priority=2) |
Quote:
|
Quote:
|
Quote:
|
This is great! I started tinkering with Ovale myself but never got around to finishing it. Thank you for starting this.
|
Here is another way to write it. It copies exactly the SimulationCraft logic and action order. The addon seems to run all statements and knows what to suggest based on what statement came first. I've also added checkboxes to give ppl the option to turn various stuff on and off.
Code:
Define(FFF 16857) |
| All times are GMT -4. The time now is 3:29 AM. |
Forum Infrastructure by vBulletin 3.6.12 ©2000-2007, Jelsoft Enterprises Ltd.