Xelper, have you considered hard-coding the use of lightwells into PQR?
Sharing a code snippet for Recuperate, not sure how the other Rogue profiles handle it but for PvP you want to keep it up as your main priority:
This will basically cast Recuperate if you have more than 3 seconds remaining on your Kidney Shot cooldown (you might not want to recuperate right before KS comes up in case you need the combo points for an emergency KS) and it will refresh recuperate when there is less than 3 seconds remaining on it, this is because you don't want to get CCed before you get the chance to refresh, and of course it will only refresh when you have 5 combo points, emergency low combo points recupes should be handled manually depending on the situation imo.Code:local kstart, kduration = GetSpellCooldown(408); local r, _, _, _, _, _, rexpire = UnitBuffID("player", 73651) rexpire = (rexpire ~= nil) and rexpire or 0 if GetComboPoints("player", "target") == 5 and (kstart + kduration - GetTime()) > 3 and (rexpire - GetTime()) < 3 then return true end
Sort of, but it's nothing like the usual profiles that do everything for you, it's more like a toolkit to help you get the upper hand or automating things that are easy to forget, but it will probably never be worth releasing as a whole so I will just contribute the odd piece of functionality now and again that I think will be useful to people.
Hey guys,
Just wanted to say a big THANK YOU to Bu_ba and Boss for the warrior profiles... they're ****ing insane. 11k DPS on a target dummy AT LVL 81?! wtf lol this is madness
Updated my profiles again. This is mostly aimed for PVP.
1. For SV/BM profiles they will restrict themselves from using cobra shot if a DK puts up Anti-Magic Shell. Instead they will switch to Steady Shot for focus generation if needed.
2. For the MM profile if the target has Hand of Protection on them, it will restrict the use of Steady Shot, instead using Cobra Shot for focus generation.
3. For the MM profile if the target has Hand of Protection on them, it will not cast Aimed Shot! on them.
4. I've included a Rapid Fire option in abilities for use if you wish to save Rapid Fire for "burn phase" boss mechanics. This is labelled as "Rapid Fire (pushdown) replace the position in any of the profiles with this.
5. I've included an Extreme soloing profile in there, for players who like that sort of thing. It's major focus is keeping mend pet up while providing dps. However this is BM only, if you like MM or SV I suggest tweaking the profile to suit or mailing me the list of abilities that you use in order and I may or may not include this in future updates.
Hunter Profile Feb 10 2012.rar
As always if you find a problem let me know, I have not tested 100% of these changes since I only play BM for pvp, so that profile has been tested along with the extreme soloing one. The MM pvp profile has not been tested so feedback if something doesn't work would be appreciated.
@Valma
Impressive coding...
2 minor issues:
1- The autostop fix (with the OR) does not work on Dummies (as you said, on Dummies, the UnitAffectingCombat(target) returns nil and so unitincombat is always FALSE leading to always return true for the autostop).
In your logic, should we have both to true in order to attack the mob ?
2- When we de-select the target (using ESC), to avoid receiving an LUA error, we should test that the unit exists in the event: events:PLAYER_TARGET_CHANGED.
Here is the error:
2 Enhancements:Code:Message: [string " function pqrFunc0() ..."]:875: attempt to index a nil value Time: 02/11/12 00:38:44 Count: 8 Stack: [string " function pqrFunc0() ..."]:875: in function `?' [string " function pqrFunc0() ..."]:941: in function <[string " function pqrFunc0() ..."]:941> [C]: in function `ClearTarget' Interface\FrameXML\UIParent.lua:2965: in function `ToggleGameMenu' [string "TOGGLEGAMEMENU"]:1: in function <[string "TOGGLEGAMEMENU"]:1> Locals: self = <unnamed> { 0 = <userdata> } (*temporary) = <function> defined =[C]:-1 (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = 8 (*temporary) = nil (*temporary) = nil (*temporary) = nil (*temporary) = "attempt to index a nil value"
1- Have the MouseOver functionality to be enabled/disabled through a keystroke (like RightCtrl to enable/disable).
2- Have a keystroke to focus on MouseOver or Target (like onLeftAltKey, if mouseover(unit) then /focus unit elseif target then /focus target)
Great work !
(I am not allowed to provide +rep)
Last edited by romb0t; 02-10-2012 at 06:53 PM.
What could be all this about? All my profiles work, so i ignored those, but the autodisenchanter or autorprospect profiles dont work.
this pops up when i start a profile
Code:1x <string>:"...":131: attempt to index field 'priorityTable' (a nil value) <string>:"...":40: in function <[string "..."]:23> nil Locals: self = <unnamed> { 0 = <userdata> } elapsed = 0.047000002115965Code:6x <string>:" function pqrFunc0() if not UnitCastingInfo("player") then ...":19: unexpected symbol near ')' nil Locals:Those are from the BugSack addon. If you need any more info, ill gladly answer everything i can.Code:3x <string>:" function pqrFunc0() if not UnitCastingInfo("player") then...":37: 'then' expected near '=' nil Locals:
Xelper was helping me with this spell reflect code for warrior's aimed at bgs. I know he has enough on his plate just wondering if someone can spot the error. The part with the /equip macro I added in to the place where I think he told me to put it but it may be wrong.
Code:local reflectList = {30451, 33786, 605, 118, 51505, 339, 51514} --Arcane Blast, Cyclone, Mind Control, Polymorph, Lava Burst, Entangling Roots,Hex local castReflect = false local myStance = GetShapeshiftForm() local rage = UnitPower("player") local _, _, _, rageCost = GetSpellInfo(23920) local _, reflectCD = GetSpellCooldown(23920) for i,spellID in ipairs(reflectList) do local spellName = GetSpellInfo(spellID) --arena loop for y=1,5 do if UnitExists("arena"..y) then local castingName = UnitCastingInfo("arena"..y) if castingName == spellName then If UnitIsUnit("player", "arena"..y.."target") then castReflect = true end end end end --target check local castingName = UnitCastingInfo("target") if castingName == spellName then if UnitIsUnit("player", "targettarget") then castReflect = true end end end if castReflect then if rage >= rageCost then if reflectCD < 3 then if myStance == 3 then CastSpellByID(2457) --Battle return true RunMacroText("/equip Ruthless Gladiator's Bonecracker") RunMacroText("/equip Ruthless Gladiator's Shield Wall") end if myStance ~= 3 then CastSpellByID(23920) --Reflect return true end end end end