Description
{{{
This addon adds some usefull combat-related functions to the scripting engine.
I know most of this (at least the early versions) can be done with macros, I was using those macros myself, but I created this addon for my personal use, and also learn lua in the process.
*************************************************************************
Important note: 1.0 beta will be released soon, just be patient
Update: Added some screens from 1.0beta
*************************************************************************
'/pcl' or '/combatlogic' for in-game info
'/pcl help' for detailed info on functions
(Be aware that this addon is still in development and may have some bugs)
*************************************************************************
Built-in complex functions:
lazyRogue(<prio>) -> This function will cast the correct attack based on the priority given. The priority input is a permutation of the following:
F for feint, E for eviscerate, R for riposte, S for sinister strike, B for backstab/ambush and W for weapon swapping (this one requires WeaponQuickSwap)
Some simple examples:
lazyRogue('RS') will cast sinister strike almost all the time, but will cast riposte when it's posible.
lazyRogue('EB') will cast backstab until you have 5combo points, then will cast eviscerate.
you can, of course, make complex combinations:
lazyRogue('FEB') this is, for an example, the macro a BS rogue will use in vaelstrasz. It will cast Feint everytime it's up. Then will check if you have 5 combo points and enough energy to cast eviscerate, and if it doesn't cast eviscerate, will cast backstab/ambush.
lazyRogue('ERWS') is my main config for it: it casts eviscerate if you have 5 combo points, then try riposte if eviscerate was not cast, if none of these two are triggered, it will check if the correct set of weapons is wielded, if it's not, uses weaponQuickSwap to set it, if you have already the correct one, casts sinister strike...
Of course you can make any combination of the spells for the input.
Weapon swapping is not finished yet, it works, but requires some variables being set to work, take a look at the example macros in the screenshots. (Note: take a look at clearWeaponSet() info, below in this text)
ninjaWear(outfitname) both rogues and hunters would love this. This function requires wardrobe to work, but belive me, it's worth it. If you are out of combat, it will do the same as /wardrobe wear outfitname. If you are in combat, it will cast vanish or feign death deppending on your class, and then, when you get out of combat, it will switch your gear. Just imagine how many golds you can save with this in sure-wipe scenarios. This function also, improves the macro version, so the macro uses /in 1 wardrobe... and in so many bosses, that second will be enough to get in combat again, this function will switch gear in the exact moment you get out of combat, having more time to do it.
safeVanish() will cast vanish if you are in combat, stealth otherwise. As a combat rogue without preparation, i had sometimes wasted my vanish being out of combat, with this, it will not happen anymore. Also, if you have chronos, if you are in combat and cast vanish, a countdown will help you to know how long will take to have your vanish up again.
Simple functions:
(this ones were originally auxiliar functions, but they can be usefull, so there are if you want to use it)
attackFromBehind() this is a simple function, it will cast Ambush if you are in stealth, backstab otherwise.
clearWeaponSet() Use this function to clear the weapon set variable, so the next time a weaponswap loop of lazyrogue occurs, the weapons will be checked. This is usefull when you cast a ninjaWear('naked'), to ensure you will auto-equip your weapons.
inCombat() returns true or false depending if you are in combat or not. It's far more accurate (and more intuitive) than PlayerFrame.inCombat
*************************************************************************
At the moment i will focus on rogue stuff, so my main char is a rogue, but don't expect this addon to be a only-rogue addon.
Know bugs:
There are some debug msgs out there...
There's a problem detecting you are in combat (being really not in combat) if you zoned while in combat and haven't engaged any mob yet.
Working on:
general testing before 1.0 }}}
- !html
Important note: This addon does NOT work in wow 2.0
This addon adds some usefull combat-related functions to the scripting engine.
I know most of this (at least the early versions) can be done with macros, I was using those macros myself, but I created this addon for my personal use, and also learn lua in the process.
*************************************************************************
Important note: 1.0 beta will be released soon, just be patient
Update: Added some screens from 1.0beta
*************************************************************************
'/pcl' or '/combatlogic' for in-game info
'/pcl help' for detailed info on functions
(Be aware that this addon is still in development and may have some bugs)
*************************************************************************
Built-in complex functions:
lazyRogue(<prio>) -> This function will cast the correct attack based on the priority given. The priority input is a permutation of the following:
F for feint, E for eviscerate, R for riposte, S for sinister strike, B for backstab/ambush and W for weapon swapping (this one requires WeaponQuickSwap)
Some simple examples:
lazyRogue('RS') will cast sinister strike almost all the time, but will cast riposte when it's posible.
lazyRogue('EB') will cast backstab until you have 5combo points, then will cast eviscerate.
you can, of course, make complex combinations:
lazyRogue('FEB') this is, for an example, the macro a BS rogue will use in vaelstrasz. It will cast Feint everytime it's up. Then will check if you have 5 combo points and enough energy to cast eviscerate, and if it doesn't cast eviscerate, will cast backstab/ambush.
lazyRogue('ERWS') is my main config for it: it casts eviscerate if you have 5 combo points, then try riposte if eviscerate was not cast, if none of these two are triggered, it will check if the correct set of weapons is wielded, if it's not, uses weaponQuickSwap to set it, if you have already the correct one, casts sinister strike...
Of course you can make any combination of the spells for the input.
Weapon swapping is not finished yet, it works, but requires some variables being set to work, take a look at the example macros in the screenshots. (Note: take a look at clearWeaponSet() info, below in this text)
ninjaWear(outfitname) both rogues and hunters would love this. This function requires wardrobe to work, but belive me, it's worth it. If you are out of combat, it will do the same as /wardrobe wear outfitname. If you are in combat, it will cast vanish or feign death deppending on your class, and then, when you get out of combat, it will switch your gear. Just imagine how many golds you can save with this in sure-wipe scenarios. This function also, improves the macro version, so the macro uses /in 1 wardrobe... and in so many bosses, that second will be enough to get in combat again, this function will switch gear in the exact moment you get out of combat, having more time to do it.
safeVanish() will cast vanish if you are in combat, stealth otherwise. As a combat rogue without preparation, i had sometimes wasted my vanish being out of combat, with this, it will not happen anymore. Also, if you have chronos, if you are in combat and cast vanish, a countdown will help you to know how long will take to have your vanish up again.
Simple functions:
(this ones were originally auxiliar functions, but they can be usefull, so there are if you want to use it)
attackFromBehind() this is a simple function, it will cast Ambush if you are in stealth, backstab otherwise.
clearWeaponSet() Use this function to clear the weapon set variable, so the next time a weaponswap loop of lazyrogue occurs, the weapons will be checked. This is usefull when you cast a ninjaWear('naked'), to ensure you will auto-equip your weapons.
inCombat() returns true or false depending if you are in combat or not. It's far more accurate (and more intuitive) than PlayerFrame.inCombat
*************************************************************************
At the moment i will focus on rogue stuff, so my main char is a rogue, but don't expect this addon to be a only-rogue addon.
Know bugs:
There are some debug msgs out there...
There's a problem detecting you are in combat (being really not in combat) if you zoned while in combat and haven't engaged any mob yet.
Working on:
general testing before 1.0 }}}






