TrainingWheels
From WowAce Wiki
| Summary | |
|---|---|
| Training Wheels | |
| Helps you decide which spells to cast next | |
| TOC | 2.2 (20200) |
| Category | Combat Addons |
| Author | Babu |
| Details | |
| Embeds | LibRock-1.0, LibRockComm-1.0, LibRockConfig-1.0, LibRockConsole-1.0, LibRockDB-1.0, LibRockEvent-1.0, LibRockHook-1.0, LibRockLocale-1.0, LibRockLocale-1.0, LibRockModuleCore-1.0, LibRockTimer-1.0, FuBarPlugin-2.0, Ace2 |
| OptionalDeps | FuBar |
| Links | |
| Betas | Ace SVN Zip |
| Changelog | FishEye |
Training Wheels is an addon that helps you to decide what spells or actions to cast next, based on rules that you configure. The rules that you can specify are comprehensive, allowing you to cast the right spells 90% of the time.
Training Wheels is an addon under active development. I need help maintaining the addon, so if you wish to help out either with coding or providing me with your own lists, please see the Development page.
I need help testing this addon!
Please let me know if this addon has any bugs or a feature is not working by editing the Bugs page. It is okay, you can just post there. Also let me know if you have any feedback for this addon by editing the Feedback page. Just post there, don't be shy. You can let your friends test the addon as well.
FAQ / Why Training Wheels?
How do I get / install the addon?
files.wowace.com. Beta versions are in branches, so you should be safe downloading straight from Trunk. Extract the .zip file into your Addons folder.
I upgraded the addon to a newer version and something broke. What should I do?
Please check the Bugs page and see if there is a fix you can do. Otherwise, edit the Bugs page and report the bug there.
Who made this addon?
Babu of Maelstrom. Please don't contact me in-game.
What should I use this addon for?
You can use this addon to implement certain rules for certain spells only, or you can use it to implement your whole spell cycle. Note that it will never be as intelligent as a human so it can never make 100% correct decisions for you. But it should be good enough that the performance difference between following the list and casting it yourself is minor at most.
I'm already good in my spell cycle, why would I want this addon?
It allows you to specify certain actions to be used under a wide range of circumstances, beyond the spells you usually cast. In fact, the addon can probably accommodate 90% of your spells. As an example, it can suggest you cast Amplified Doom if you have both Amplify Curse and Curse of Doom ready, and that you have no curse on the enemy, and that one of your trinkets are up. It can tell you to Life Tap only if Dark Pact is not on cooldown (and that your life is above 90% so you don't Life Tap when low), and tell you to Super Mana Potion when both Life Tap and Dark Pact are on cooldown and your Pot is ready. By implementing rules to accommodate all these things, you no longer have to concentrate so much on yourself and instead you can concentrate on the boss encounter.
This addon is not perfect. My Scorch stack dropped or my DoT dropped!
If you need to refresh earlier, specify a refresh leeway for the spell. 10 seconds is good enough for most CC, and maybe 5 seconds for things that you don't want to drop off at all. For DoTs, leave it at 0 unless you want to lose your last DoT tick.
Why is the text sometimes yellow and sometimes white?
Yellow basically means the spell is not yet ready if you press the spell right at that exact moment. It is probably due to Global Cooldown or the Cooldown is too long. Wait a little while for it to revert back to white. White basically means you can press it now. So if it appears in white, you can press it now.
Configuring Training Wheels
Configuration can be fairly overwhelming at first, but it actually is quite easy.
The first step is to access the Configuration window, by using the slash command /tw, or clicking on the Training Wheels button in FuBar or the minimap.
The next sections assume you are in the configuration of Training Wheels (the one with an icon).
Finding out what version you have
Click on Show Version. There are two versions listed, one is the addon version and another is the spell version.
Addon configuration
You can change addon settings such as latency, leeway, and display options. Pay attention specifically to the latency and leeway settings. Find the values that you are most comfortable with. (I recommend setting leeway to 0.1s and latency to whatever your average latency is).
Note: For text fields, you need to press Enter after you type the value to set it. Make sure you do this!
Spell list menu
Expand on the Training Wheels item (the one with the icon), and you can see a Spell list item. Click on it to manage your spell list.
Spell lists are lists which determine what spells to cast based on the rules you set. For each character, you have one spell list. In that spell list, you can have many spells. For each spell, you can have multiple conditions. (i.e. A Shadow Priest spell list contains all the Shadow Priest DPS spells, and most of the spells have certain rules, such as Shadowfiend that should only be cast when your cooldown is up and you are lacking mana.)
Your character begins with an empty spell list that you can fill up with spells. Thankfully, the addon includes some sample spell lists for certain classes (currently Priest & Warlock) so you don't have to do all the work. From the Spell list configuration, click on Load spell list. If you see TW - <Spell list name> in the drop down menu, you're in luck. Click on it to load the relevant spell list. Otherwise proceed on and learn how to make your own spells.
Creating a new spell
From the Training Wheels menu, type in the Add spell textbox the display name of your spell (e.g. Mind Blast). Then press Enter to create it. You should see the new spell displayed underneath your Spell list. Click on it to configure it.
Configuring your spell
The spell is created with certain default values. For example, it assumes you're casting a spell of the same name as the display name. If this is different, type in the real spell name in the Actual spell name box. You may even intend not to cast an actual spell (for item usage, etc). If that is so, leave the Actual spell name box empty so the addon knows that you're not casting anything. Please do not be a cute boy and type (Rank X) next to the spell name. My addon doesn't understand that nor does it care about it, thanks.
You will need to specify the target information for your spell. If the spell can be performed without a target, leave the target type as "Disabled". Other settings you can use are the source of the target (Target/Player/Pet/Focus/Mouseover), and whether the target should be dead or alive (or "Disabled") for the spell to work. You should know your spell so this is fairly elementary stuff.
The spell cast time is usually obtained automatically (from the highest ranked spell in the spell book), or 0 if the spell in question is blank (for items and whatever). If you wish to specify a different cast time, check Specify cast time and then set the cast time manually. This is useful for POM-Pyro and other similar chained spell combinations.
Check ignore cooldown if you want to cast the spell even if it is on cooldown. Good if you have Cold Snap or any other spell that resets your cooldowns. You may want to create a spell ready check to make sure that the other spell (e.g. Cold Snap) is not in cooldown though.
Your new spell will be suggested to you only when the right target is selected and the spell cooldown is up or you ignored cooldown. That should be good enough for most direct damage spells like Mind Blast and Fireball. If it is not good enough, then see below for how to add rules to your spells.
Try this, create a spell for your most used direct damage spell. Then target an enemy and see the spell suggested to you. Once you cast the spell, it will disappear if the spell has a cooldown. If it doesn't work, make sure you got the spell right.
Adding rules to your spells
If you want to be more strict on the spell suggestions, you will need to add rules to your spell. For a spell to be suggested, it must be ready itself and all its rules are met.
Note: Rules/Conditions/Checks are synonymous. I just type what I prefer based on context.
To add a rule to your spell, scroll down its configuration screen and click on any of the buttons below to add a check to the spell. For example, to add an Aura check, click on Add aura check. When the rule is created, click on it at the left to modify it, similar to how you did when you add a new spell. You can also delete it by clicking on it, then clicking on Delete check at the top of the configuration screen.
Aura check
The aura check is slightly complicated so I have to explain it. The aura check is met only when the unit in question is under the effect of an aura (or the opposite if you configure it that way). The aura stack can also be considered, as well as whether the spell is expiring or nonexistent.
Note: An aura is the same as a buff/debuff.
Specify the target type. For example "Pet" to check if your pet has Mend Pet, "Target" to check if your target has Shadow Word: Pain, etc.
Under the aura name, specify the aura name. You can also enter aura classification instead of the specific aura name (e.g. Magic, Curse, Disease, No Type). Then specify the minimum stack and maximum stack of the spell for the condition to be met. For DoTs, you only cast the DoT when it is non existent so set the min and max stack to 0 (not 1/1). For Sunders, you only want to cast it when the Sunder stack is < 5, so set the min stack to 0 and the max stack to 4 (not 1/5 or 0/5). Make this distinction! It is not what the stack should be, but what the stack is before you can cast.
Use Only player casted to set whether only your buffs or everyone's buffs are considered. For individual DoTs, Only player casted should be checked. While for Curse of Shadow, Only player casted should not be checked.
Spell affects aura determines if the spell associated with this condition adds or substracts from the stack. The addon likes this information, so please fill it in for maximum accuracy.
If the spell should be refreshed constantly, check Refresh aura. This will cause the addon to suggest you recast it if the aura is expiring, regardless of the present stack. Good for DoTs and CC, as you want the addon to ask you in advance to recast it. Refresh leeway makes you refresh earlier. If you set Refresh leeway to 0, it will time the refresh such that the aura is refreshed right after it expires. But if you set it to 10 seconds, it will ask you to refresh while the aura has 10 seconds remaining. Good for CC and precious Scorch stacks.
Try this (for Priests), create a spell called Shadow Word: Pain. The default values are correct, so we only need to add an Aura Check. In the aura name, type Shadow Word: Pain. Then target an enemy and cast SWP. When the debuff appears on the target, the addon won't ask you to refresh it. But once the addon disappears, it will suggest you recast it again.
Try this (for Mages), create a spell called Polymorph. Change the target source to Focus. Then create an Aura Check with aura name Polymorph. Make sure the target type is Focus. Then under Refresh leeway, set it to 10 seconds. Then go and focus a mob and you will see Polymorph suggested. When the Polymorph has <10 seconds left, it will prompt you again to recast (no matter what you're currently targeting).
Other checks
The other checks are really easy to configure, so just play around with it. You can try checking if trinkets are ready, whether your Amplify Curse is ready, whether your Super Mana Potion is ready, etc. (Too tired to type)
Managing all the spell lists
Training Wheels is sane enough to allow you to manage multiple spell lists rather than giving you just one. From the Spell list configuration page, you can save your spell list, load or delete it, clear your current one, and revert to snapshots. (Sending spell list to someone else is a planned feature.)
Save/Clear/Load/Delete
Simply type in a name for your spell list then press Enter to save it. The spell list is now available to all your characters for loading.
To clear your current spell list, just click Clear spell list. Your spell list is now gone.
To load a spell list, just click on it from the drop down. Note that it does not clear your spell list automatically, so your current spells should still be available unless the loaded ones overwrite them.
To delete a spell list is the same procedure as loading, just be careful when you do it as they will be gone forever.
Snapshots
Snapshots are taken of your current spell list whenever you perform a Save/Clear/Load action. This is so you can always revert back if you accidentally did something wrong. A snapshot is also taken when you first login.

