What I forgot to mention in that video, was that apparently a way to easily open the macro window was added so there's really no use for the script command that opens the window. Just hit your ESC> key and choose "Macros" from the menu that appears to open the window!
Ok class, lets review, step by step. Here's how you make a basic macro in War. This is accurate as of the time of this writing: (click an image below for a larger view)
- Hit the <ESC> key and click the "Macros" option. Your macro window will appear. Alternatively, you can type in the following script to launch the macro window:
/script WindowSetShowing( "EA_Window_Macro", true )
- Next, click on a macro slot that is empty. When empty, it will say "NO ICON SET" like in the picture below:

- Next to where it says, "Macro Name" click the empty icon to pick your icon picture for this new macro. After you select an icon picture it will be shown in the slot:

- Type in a name for your macro where it says, "Macro Name" and type in the actual macro commands where it says, "Macro Text". In my example below, I called it "Assist" and the macro text is "/assist":

- Finally, click the icon in your macro window and drag it to your hotbar where you can click it or use a keybind to execute it:

And that's it for making a basic macro!
If you weren't able to discern what it was that I typed in the videos, here's a few of the commands:
Target self:
/script TargetPlayer(towstring(GameData.Player.name))
Target player by name:
/script TargetPlayer(towstring('playernamehere'))
*note: /target playername works just fine too :)
Open bags:
/script EA_Window_Backpack.ToggleShowing()
Open Macro Window:
/script WindowSetShowing( "EA_Window_Macro", true )
As I said before, the full API is documented (mostly) at thewarwiki.com, so go check it out as there are tons of commands there to experiment with. Give me a shout with cool macros you guys find, if I get enough submissions I may start a new macros site or page here for them!
As a reminder, here's the tips I mentioned in the video:
- To scroll through the previous text you've entered into the chat window, press <SHIFT> + <UP ARROW>
- Right click any chat tab and choose Command Lists>Commands or Command Lists>Emotes to see a list of either. /help shows the command list also.
BONUS tidbit for my readers: There is a tome unlock called "The Box Watcher" for anyone who clicks the mailbox 50 times!
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=50371564-624d-4c08-91c9-fe56b615ca62)
37 comments:
-
GEOFFWATSONDESIGN
said...
-
-
September 10, 2008 10:43 PM
-
Artagus
said...
-
-
September 10, 2008 11:01 PM
-
Matt
said...
-
-
September 11, 2008 7:57 AM
-
Crofe
said...
-
-
September 11, 2008 8:39 AM
-
br3ntbr0
said...
-
-
September 11, 2008 9:53 AM
-
Crofe
said...
-
-
September 11, 2008 12:18 PM
-
Pete
said...
-
-
September 11, 2008 12:30 PM
-
Crofe
said...
-
-
September 11, 2008 1:37 PM
-
sop
said...
-
-
September 11, 2008 6:55 PM
-
Anonymous
said...
-
-
September 23, 2008 6:02 AM
-
Mr. Snazz
said...
-
-
September 27, 2008 10:23 AM
-
Rob
said...
-
-
October 1, 2008 11:17 AM
-
Anonymous
said...
-
-
October 1, 2008 1:11 PM
-
Anonymous
said...
-
-
October 8, 2008 2:30 PM
-
Anonymous
said...
-
-
October 9, 2008 2:34 PM
-
Anonymous
said...
-
-
October 15, 2008 6:17 PM
-
Anonymous
said...
-
-
October 19, 2008 1:04 AM
-
Fosgate
said...
-
-
October 26, 2008 9:11 PM
-
Anonymous
said...
-
-
October 28, 2008 3:57 PM
-
Anonymous
said...
-
-
November 1, 2008 2:59 AM
-
Anonymous
said...
-
-
November 16, 2008 12:33 PM
-
Anonymous
said...
-
-
November 18, 2008 10:43 AM
-
Anonymous
said...
-
-
November 19, 2008 1:36 PM
-
Anonymous
said...
-
-
January 13, 2009 10:32 PM
-
Anonymous
said...
-
-
January 14, 2009 11:53 AM
-
Anonymous
said...
-
-
January 29, 2009 4:32 PM
-
Anonymous
said...
-
-
February 1, 2009 9:34 PM
-
Anonymous
said...
-
-
February 26, 2009 7:27 AM
-
Daniel
said...
-
-
March 4, 2009 9:40 AM
-
Anonymous
said...
-
-
April 6, 2009 7:12 AM
-
Anonymous
said...
-
-
April 9, 2009 7:52 AM
-
Anonymous
said...
-
-
April 9, 2009 2:09 PM
-
sean
said...
-
-
April 26, 2009 9:15 AM
-
Anonymous
said...
-
-
June 8, 2009 6:23 PM
-
Anonymous
said...
-
-
June 23, 2009 2:01 PM
-
Anonymous
said...
-
-
July 9, 2009 1:33 PM
-
Anonymous
said...
-
-
July 9, 2009 8:25 PM
blog comments powered by DisqusAwesome beginner's guide to scripting. I'm going to log in now and see what I can come up with.
Cheers!
Excellent, appreciate the work. It will be very helpful.
Thanks for the vid Brent! Very informative
I was wondering about macros - I understand Mythic's reason behind limiting it to one line a piece ( or one execution per macro ) but it's really a bummer you can't do /assist maintank /group "i'm assisting on "target", etc" I thought it was a nice function that I used often in EQ1 and i'm sure they had it in WoW, etc (although I never played long enough to find out)...
Hopefully there will be a way to make this work without people exploiting macros to gain unfair advantages.
I was going to ask about the one line thing, but then I reread the comment above me. That sucks. I was trying to make a macro that would equip my sword and shield and can't on one macro because of the one line limit. Is there a command to maybe execute a .lua file which could then contain multiple lines?
I agree with you guys, what I've seen so far seems disappointing. Really basic 2 line macros are needed, this 1 command per macro stuff is fairly useless. Hopefully the mod community will produce something that extends this basic functionality somehow, or perhaps Mythic will open it up some more. We'll see.
I'm still at work so I can't test this or read up on rules, but I was just thinking about this one line hold up. I think I have a way that would let you do multiple things in a macro. The question is if Mythic has put this limitation in for a reason will creating a work around for it break a rule of theirs? Are there even any official modding rules? For example, I know in WoW you weren't suppose to create a mod that would allow your character to act on his own (because there were some things I know were possible that would have broken this rule, i.e. when I take damage, cast a certain spell)
Thanks for a great post!
Have you found a way to do an alias yet, for stuff that you don't want on a hotbar?
Something that would work similar to:
/alias inc /say "Incoming mob, everyone get ready!"
which you'd then fire from a chat window by just typing /inc and you'd get the command
/say "Incoming mob, everyone get ready!"
I *seem* to remember DAoC had something like this, but maybe I'm dreaming it...
@Pete: The idea I had would be able to do that as well. Here's what I was thinking. Create an EventHandler for a specific chat type (I was thinking tells using the CHAT_REPLY event, which I *think* will fire whenever you send a tell whether it is a reply or not). In the Handler you could see who the sender was by way of the SystemData.UserInput.ReplyToPlayerName[1] and if it matches the player (i.e. you sent yourself a tell, another thing that I'm speculating is possible) you then parse the message which would have a predefined action related to it.
Using the example you asked about you could type "/tell [Yourself] inc" which then might be able to trigger you saying "Incoming mob, everyone get ready!"
This is based off of speculation at this point because I'm not at home and able to test it to see if any of the steps are possible, but I will be toying with it as soon as I get home.
All I want to know is how to make 2 spells to 1 key.
I tried the / macros. It didnt work for me.
I did a simple /Scourge
Thinking it would cast scourge... but it didnt. I really want to make a macro that you can spam click or click once to unleash a spam of the spell "Scourge" without a delay between casts.
This would be helpful for the lower levels because we (Zealot) only have that spell and a DoT to work with.
Later when you get more spells i'd like to be able to create a basic sequence including all the regular spells you would use to kill a mob.
Is this not possible?
So far I cant get any spells to work with a macro.
Here's an example of a simple two-command macro. This macro will target self and open your backpack (not very useful, but thats what it does):
/script TargetPlayer(towstring(GameData.Player.name)); EA_Window_Backpack.ToggleShowing();
All you have to do is seperate the commands with semicolons. :)
I personally can't stand the macro system in War. I already have two full bars of hotkeys and only lv 20. I can not stand having to jump all over the keyboard because someone thinks that allowing a couple moves/casts on one key will promote "boting". Newsflash -- you can bot without in game macros people have been doing it for years. The only thing their system does is promote people to use some type of 3rd party script engine just to combo their moves.
The WoW macro system was very robust, and I don't think it lent much to botting.
The WAR Macro system is very limited. Why would I need to make a 1 line macro with a single action on my current target? What I think the macro system should allow at the LEAST is:
--- Someone to create a macro to target someone else and perform a single action on them without changing their current main/subtarget.
--- Allow you to say something in chat when you do an action.
So if I am playing a DoK or other healer I can have the tank as my subtarget, and yet have a macro to throw a lower level HoT on someone in my party that takes a little damage.
What I think the macro system should not support is:
---The repetitive casting of a single action/spell (like an Auto-attack for your most powerful ability)
--- The casting of a sequence of spells/skills on yourself or anyone else.
--- The casting of a particular spell automatically when a certain condition occurs (e.g. a macro that casts a heal on you automatically whenever you get damaged).
To me these enter the realm of very possible abuse potential. It's like you're programming your toon to play the game with minimal interaction from yourself. While I can certainly see that having an "Autocast" for the spell you most commonly used against Mobs would be useful ... having that ability in RvR would lead to everyone just launching their loop/sequence macros once they are in combat which could actually lend advantages to certain archetypes.
Imagine a Melee VS a Caster. The Melee must run into melee range, and maintain a certain distance to do damage. The Melee may have to adjust positioning frequently to make best use of his/her abilities. While all the Caster needs to do is launch an automated macro and he/she will be doing optimal damage the entire fight. Who wins?
So honestly I hope they increase the capabilities of the Macro system ... but not too much.
How would you write a script to display your targets name in chat?
/sp Targetinfo.UnitName()
Hooray for autopilot.
/sarcasm
All I want to know is how to make 2 spells to 1 key. is this possible ?
I am trying to make a macro for healing that will cast my 2 HoT's and a direct heal on one target. I have no clue how to do it but in RvR this will be very helpful.
any ideas on how to accomplish it? Thanks in advance for any help, I can't claim any expertise in coding so any help is welcome.
Announce Target:
/script SystemData.UserInput.ChatText=L"Targeting: "..TargetInfo:UnitName("selfhostiletarget") SystemData.UserInput.ChatChannel=L"/s" BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT)
Announce Target Health: (Works on keep doors)
/script SystemData.UserInput.ChatText=TargetInfo:UnitName("selfhostiletarget")..L" is at "..TargetInfo:UnitHealth("selfhostiletarget")..L"% health." SystemData.UserInput.ChatChannel=L"/s" BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT)
Question: how can a melee automatically run into range? i mean i if i target one and wanna hit. can i do something like a runto script?
/follow
I would like to say who I am rez'g in scenario, can't get it quite right with /sce rez'g %t, could someone help me?
I am kinda glad we cant macro multiple spells into 1 macro like you could in WoW. It just got stupid sometimes in fights & you really started to see the flaws of WoW.
Is there a simple script that will whisper my target prior to my rezzing them that says, 'rezzing you' then cast the rez?
The idea is to let someone know they are getting rezzed so they dont release to quick.
something like this:
/w %t rezzing you; cast resurection ?
Any help would be great.
Looking for the exact same thing as the previous commenter...
Send a tell to the targeted player
Then cast rez
Is there a way to make a macro to get a ground target (like the one used for mine on engineers) to set the ground target at a xxx range.
thanks in advance for your help
I would like the same thing....
Say; rezzing (name target)
Cast; rune of life (on target)
Thats it, ty...
My hubby plays Warhammer with his friends. I would like to come up with a "quest" in the style of warhammer in real life, for a valentine's day adventure. I don't know much about the game. Can any fans tell me ideas on how the game could be creatively turned in to a real life day adventure?
Cheryl
email me at nwblondie74@hotmail.com
can you even use an ability via macro? if not, then the whole macro system is limited to useless spamming and/or useless rezzing whispers...
I didn´t find a way to use spells in macro so i end up with the solution. to use the macro to inform the player and than use the spell. But in battel i normel end opp death :).
is there a pause command
for example /s hi;pause/s goodbuy
/script SystemData.UserInput.ChatText=L"Targeting: "..TargetInfo:UnitName("selfhostiletarget") SystemData.UserInput.ChatChannel=L"/s" BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT)
you can change the words in the first "" to your words . i.e : FOCUS FIRE !! REZZING!! etc
is there a way to link a chain of spells (for example chosen auras) so everytime you press a button it casts the next spell in the chain
is there a way to create a macro that targets party members. Im looking to create a macro that i can click and it will cycle through the party members as a target. instead of using f1 f2 f3 ...
The script mentioned three above:
/script SystemData.UserInput.ChatText=L"Targeting: "..TargetInfo:UnitName("selfhostiletarget") SystemData.UserInput.ChatChannel=L"/s" BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT)
you can change the words in the first "" to your words . i.e : FOCUS FIRE !! REZZING!! etc
----------
When I use it, it just says it without targeting a player.
Ability use = NerfedButtons addon
Correct Way:
/script SystemData.UserInput.ChatText=L"/s Targeting: "..TargetInfo:UnitName("selfhostiletarget");
BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT);
Resurrect Macro:
/script SystemData.UserInput.ChatText=L"/s REZ INC "..TargetInfo:UnitName("selffriendlytarget")..L" ! Get Up You Lazy Bum...";
BroadcastEvent(SystemData.Events.SEND_CHAT_TEXT);