A few scripts, ranging from simple to complex, showing some of the stuff you can do with GCP.
The actual script instructions are in italics. The rest is my musings.
I should explain that Aarelan is my tank. I play Aarelan as my main. When I refer to "me" I actually mean "Aarelan" or vice-versa.
Command: DrainLife
"lock - drain some health from my target" - This lets my lock get some health. without (hopefully) pulling aggro.
Command Lines
| <<Carelan>> Cast Drain Life On Aarelan-Target |
- Explanation
- Say who we want to give the command to
- Cast a spell on a target.
Command: Start
"Team - start your attack" - These are my teams opening moves - my tank pulls, and my hunter marks.
Command Lines
| <<Aarelan>> Cast Hand of Reckoning <<Barelan>> Macro /assist Aarelan Cast Hunter's Mark |
- Explanation
- Say who we want to give the command to
- Cast the spell (note no "On" is given, so will cast on my target)
- In the same command, we can give orders to another team member
- Here we're issuing a standard WOW macro command (assist)
- then we cast a 2nd spell (this is allowed as it's a 2nd character)
Yes it's legal
I think it's worth talking about this in terms of the TOS. Because of the richness of the command language, it looks like automation. The reason it's OK is that the two cast commands are given to different characters. GCP actually combines the "MACRO" command and the "CAST" command for the 2nd character to generate one macro at the WOW end. This is an example of how GCP works hard to make a complex situation look easy.
Command: Targ<->Focus
"Swap your target" - GCP asks who we want to do this, then issues the command.
This command is created by a wizard when you set up your profile.
An example of a useful feature which saves keys (and your memory). This is a command I use little, so I use a question. In this way I can assign just one key to this command, and be able to make further decisions when I press this key. I then only have to remember one key, which for me, is probably the best bit of this feature.
Command Lines
| Msg Select Toon - 1 = Aarelan,2 = Barelan,3 = Carelan,4 = Darelan,5 = Earelan, Get Toon,Enter 1 - 5 Msg Chan %Toon% macro /target focus macro /targetlasttarget macro /focus target macro /targetlasttarget |
- Explanation
- Msg shows a message for a few seconds in the GCP control bar. This is to remind us what we need to do.
- Get allows us to clarify orders. In this case GCP needs to know which toon we want to give a command to. The Ask command displays a prompt, and waits for us to press a key. It then stores that key for future use.
- The Chan command is another way to specify a team member to receive the command. The <<Name>> method is great for people, but not so good for the computer. The chan command needs a number. This number is the order in which you told GCP about your characters when you set up your profile. (i.e. the main is on Chan 1) In this case we're using the Toon variable that we got from the Get instruction.
- The rest of the command is a series of WOW macros to swap focus and target. You can place a number of macro instruction lines in a script, and they will be combined into one macro command before sending it to WOW.
Command: Follow
"Follow Me" - GCP works out which character you are controling, and issues commands to the others to follow you
This command is created by a wizard when you set up your profile.
Command Lines
| <<All>> if %$LeaderChan% = 1 Follow Aarelan endif if %$LeaderChan% = 2 Follow Barelan endif if %$LeaderChan% = 3 Follow Carelan endif if %$LeaderChan% = 4 Follow Darelan endif if %$LeaderChan% = 5 Follow Earelan endif |
- Explanation
- Everyone do the following
- %Leaderchan% is set automatically by GCP as you move to each WOW window. We can use this to decide who is the leader, and who we need to follow.
- The if statement is used to test things and make decisions. The TOS prevents us from using things like "Health < 100%" but we can use if statements with stuff that we know about (like where the mouse is) or things we ask you for (like who is being hurt)
- Once we know who the leader is, we just issue the appropriate command.

