 |
|
Macros for Raid Leaders
|
The World of Warcraft interface provides a robust macro system in addition to it's addon options. This article should provide some useful macros for prospective raid leaders. For more information about the macro interface, consult Macros At WoWWiki
[top]List raid members below 9500 HP
Note that this includes offline/ungrouped players; you can change 8 to 5 if you only use the first 5 groups. Obviously you can change the 9500 to whatever hp value you want to check.
/script
for i = 1, 40 do
local u = "raid"..i;
local hp = UnitHealthMax(u);
local _, _, grp = GetRaidRosterInfo(i);
if UnitExists(u) and hp < 9500 and grp <= 8 then
ChatFrame1:AddMessage(UnitName(u)..": "..hp.." HP");
end
end
[top]Print the raid id of the targeted player
Admittedly this is more useful for macro-building than direct raid leading, but it can be useful if you want to make a macro to assign raid targets to specific people by using the "raidN" identifier.
/script
for i=1,40 do
if UnitName("target") == UnitName("raid"..i) then
ChatFrame1:AddMessage(UnitName("target")..": raid"..i);
end
end
|
Contributors:
|
Created by Anias, 11/04/07 at 12:37 PM
Last edited by Anias, 11/06/07 at 7:02 AM
10 Comments
, 19649 Views
|
|
|
|
11/05/07, 10:29 PM
|
#2 (permalink)
|
|
Bloodsail 4 Life
|
So, my statement about changing the 40 to 25 to only test the first 5 groups is incorrect because of the way raid ID's are assigned. A slightly more advanced version that accurately restricts the check to the first five groups and doesn't generate errors is as follows:
/script
for i = 1, 40 do
local u = "raid"..i;
local hp = UnitHealthMax(u);
local _, _, grp = GetRaidRosterInfo(i);
if UnitExists(u) and hp < 9500 and grp <= 5 then
ChatFrame1:AddMessage(UnitName(u)..": "..hp.." HP");
end
end
|
|
|
|
|
01/13/08, 12:09 PM
|
#3 (permalink)
|
|
Bloodsail 4 Life
|
This is a bloodboil macro I have had kicking around for a while but never got around to putting up here. More generically, it can be used for any situation that requires you to mark three groups in a cycle.
What it does is, on the first press, puts raid symbols (the first five) on each person in group 2, then on subsequent presses moves the raid symbols to people in group 3, then 4, then back to 2, then 3, then 4, etc etc. Basically, hit it every time a bloodboil happens and it'll do the marking for you. If you don't want it to be 2-3-4, but rather 1-2-3 or 3-4-5 or what have you, you can change the '+2' bit in the first assignment up or down respectively.
/script
bbgn=mod((bbgn or 1)-1,3)+2;
local t = 1;
for i=1,40 do
local _,_,g = GetRaidRosterInfo(i);
if g==bbgn then
SetRaidTarget("raid"..i,t);
t=t+1;
end
end
SendChatMessage("Bloodboil Group "..bbgn,"RAID_WARNING");
Hopefully someone finds this helpful.
|
|
|
|
|
04/25/08, 1:01 AM
|
#4 (permalink)
|
|
Glass Joe
Draenei Paladin
Shattered Halls (EU)
|
i don't want to seem daft but.
"Type '/help' for a listing of a few commands." is all im getting.
|
|
|
|
|
|
04/29/08, 10:39 PM
|
#5 (permalink)
|
|
Glass Joe
Night Elf Druid
Ravenholdt
|
?
Unable to get raid hp <9500 macro to work.
Will continue to work on it, thinking that the formatting from what you copy/pasted and how it is displayed in this format is to blame, as is usually the case afaik.
In either case, feel free to enlighten us noobs out here in the wasteland.
|
|
|
|
|
|
05/02/08, 7:02 PM
|
#6 (permalink)
|
|
Glass Joe
Blood Elf Paladin
Eldre'Thalas
|
I just tried this macro, and it did nothing more than litter my Gchat with the actual macro text. More than likely its user error. Is there some formating I am not getting?
|
|
|
|
|
|
05/02/08, 9:36 PM
|
#7 (permalink)
|
|
Roflfury?
|
You have to do it like this:
/script for i = 1, 40 do local u = "raid"..i; local hp = UnitHealthMax(u); local _, _, grp = GetRaidRosterInfo(i); if UnitExists(u) and hp < 9500 and grp <= 5 then ChatFrame1:AddMessage(UnitName(u)..": "..hp.." HP"); end end
|
[16:26:07] <falk|hiding> there needs to be a way to buy WSG rep though
[16:26:21] <falk|hiding> atm it's like stabbing my penis with a rusty knife
|
|
|
|
05/02/08, 9:58 PM
|
#8 (permalink)
|
|
Glass Joe
Blood Elf Paladin
Eldre'Thalas
|
Thank you, very useful macro. = )
|
|
|
|
|
|
05/08/08, 12:31 AM
|
#9 (permalink)
|
|
Glass Joe
|
/script bbgn=mod((bbgn or 1)-1,3)+2; local t = 1; for i=1,40 do local _,_,g = GetRaidRosterInfo(i); if g==bbgn then SetRaidTarget("raid"..i,t); t=t+1; end end SendChatMessage("Bloodboil Group "..bbgn,"RAID_WARNING");
^^ try that for the BB Macro. <3 <3
|
|
|
|
|
|
07/02/08, 1:15 AM
|
#10 (permalink)
|
|
Glass Joe
Blood Elf Priest
Stormreaver
|
/script bbgn=mod((bbgn or 1)-1,3)+2; local t = 1; for i=1,40 do local _,_,g = GetRaidRosterInfo(i); if g==bbgn then SetRaidTarget("raid"..i,t); t=t+1; end end SendChatMessage("Bloodboil Group "..bbgn,"RAID_WARNING");
I tried using this macro just for fun, but when I change the +2 to +3 it goes Group 3 - 5 - 4... Why would it do this?
|
|
|
|
|
|
07/05/08, 7:47 PM
|
#11 (permalink)
|
|
Glass Joe
Night Elf Priest
Vek'nilash
|
Announce target in raid warning including raid icon
/script local i,s,g,u,c={"star","circle","diamond","triangle","moon","square","cross","skull"},SendChatMessage,GetRaidTargetIndex("target"),UnitName("target"),"RAID_WARNING" if g then s("Target: {"..i[g].."} "..u,c)else s("Target: "..u,c)end
|
|
|
|
|
|
|