Ok, here I will try to talk you through setting up an ftl using HKN in different steps:
1. FTL Modifierorder for the Toons
I don't know the names of your toons, so I will use ToonA ..ToonE instead. In the following macros you will have to change them to the matching names.
First thing with the FTL is to specify which modifier-combination stands for which char on which WoW-Window.
Because I think you have no prefferences therfore, I will use the one I myself are using.
Which is:
ToonA = rctrl+rshift = Toon on WoW1
ToonB = rctrl + ralt = Toon on WoW2
ToonC = ralt + rshift = Toon on WoW3
ToonD = rctrl + ralt + rshift = Toon on WoW4
ToonE = rctrl = Toon on WoW5
this order will be used in all macros and in all keybindings :)
2. Describing what you want to do
Well I want to show you the basic principals of the ftl, and therfore I will implement the following:
- Create an FTL-follow (this will I bind to the key '1')
- Create an FTL-assist key, which is used to shorten the ftl-dps-macros (this I will bind to 0)
- Create an FTL-dps-key (this will be bind to '2')
3. Setup keybindings in the HKN file
To implement an ftl with HKN you could simply copy the following in your HKN file:
Code:
//%1% : Master Key
// %2% : Slave Key
// %3% : Modifier
// %4% : SlavesToSend
<Template SendMasterAndSlave>
<SendFocusWin>
<Key %1%>
<Sendlabel %4%>
<Key %3% %2%>
<EndTemplate>
// %1% : master key
// %2% : slave key
// %3% : modifier
// %4% : Active window
// %5% : Slave Windows
<Template SendLeaderless>
<If ActiveWinIs %4%>
<ApplyTemplate SendMasterAndSlave "%1%" "%2%" "%3%" "%5%">
<EndTemplate>
// %1% : master-key
// %2% : slave-key
<Template FTL>
<Hotkey %1%>
<ApplyTemplate SendLeaderless "%1%" "%2%" "rctrl rshift" WoW1 "w2,w3,w4,w5">
<ApplyTemplate SendLeaderless "%1%" "%2%" "rctrl ralt" WoW2 "w1,w3,w4,w5">
<ApplyTemplate SendLeaderless "%1%" "%2%" "ralt rshift" WoW3 "w1,w2,w4,w5">
<ApplyTemplate SendLeaderless "%1%" "%2%" "rctrl ralt rshift" WoW4 "w1,w2,w3,w5">
<ApplyTemplate SendLeaderless "%1%" "%2%" "rctrl" WoW5 "w1,w2,w3,w4">
<EndTemplate>
this code represents the modifier order defined in 1. (in the <Template FTL>;) and matches your definition of labels and windownames of your HKN-script which you PMed me.)
Now to simply add an FTL-Keymapping for '1' (the followkey), '2' (the dps-key) and '0' (the assist key) you could add simply the following three lines to your HKN script:
Code:
<ApplyTemplate FTL "1" "1">
<ApplyTemplate FTL "2" "2">
<ApplyTemplate FTL "0" "0">
(I use here 0,1 and 2 as the master- and slavekey for both ftl-keys, for simpler setup)
..remeber that you now have to make sure, that 0,1 and 2 are not in your standard Broadcast-definition, because then you would try to define them 2 times.
So change your standard broadcast definition to:
Code:
<Hotkey ScrollLockOn Shift 3-9, space; ScrollLockOn Ctrl 3-9; ScrollLockOn A-Z, 3-9, Minus, Plus, F1-F12 except W, A, S, D, Q, E>
<SendLabel w1, w2, w3, w4, w5>
<Key %Trigger%>
..this is all you have to do in the hkn-file.
If you want to add aditional ftl-keys, like for example '3' simply add a line like:
<ApplyTemplate FTL "3" "3">
and remove 3 from your standard broadcast definition, so that it is not twice defined.
4. Keybinding Setup in WoW
You now have to bind the keys you want to use in your ftl-setup to a button in WoW.
Scince we use 1,2 and 0 they normaly are bound to the first ActionBar of WoW to the first, second and tenth button, and we will leave it at this.
More important as to which button you bind the keys is the following:
-Make sure that every modifier combination of your ftl-keys (like ctrl+1, alt+0, shift+2 ...) is NOT bound to an action in WoW.
This is normaly the case (for example ctrl+1 is normaly bound to 'petattack'), so go to the keybinding-menu of WoW and remove all of those keybindings on all of your 5 WoWs.
This is realy important and in most cases the reason why it doesn't work. The reason why all modifier-combinations must be 'unbound' is, that WoW if it hasn't an specific action bound to something like f.e. 'Ctrl + 1' falls through to the action bound to '1' and activates the spell/macro there and this behaviour do we need for out ftl.
5. Macro-Setup in WoW
To get our FTL-working we need to define some Macros:
5.1 Follow Macro
To get your chars follow each other simply create this macro on all your chars (and sub in the names of your chars) and 'drag' it to the Button '1' is bound to (first button of the normal ActionBar).
Code:
/stopmacro [nomod]
/target [mod:rctrl,mod:rshift,nomod:ralt,target=ToonA][mod:ralt,nomod:rshift,mod:rctrl,target=ToonB][mod:ralt,mod:rshift,nomod:rctrl,target=ToonC][mod:rctrl,mod:ralt,mod:rshift,target=ToonD][mod:rctrl,nomod:ralt,nomod:rshift,target=ToonE]
/f
/targetlasttarget
5.2 Assist Macro
Create the following macro and drag it to the Button '0' is bound.
Code:
/assist [mod:rctrl,mod:rshift,nomod:ralt]ToonA;[mod:rctrl,mod:ralt,nomod:rshift]ToonB;[mod:ralt,mod:rshift,nomod:rctrl]ToonC;[mod:rctrl,mod:ralt,mod:rshift]ToonD;[mod:rctrl,nomod:ralt,nomod:rshift]ToonE
Now by pressing '0' you get all the Toons to assist your leader.
Of course we don't want to do this manualy for all our leaderbased spell, but want to call the assist MAcro via a /click-Command in all our leaderbased-macros.
For this we must know, what the name of the Button is, we bound '0' to.
For the general WoW-Ui this should be ActionButton10 but if this doesen't work, you need to find the name.
This can be done by binding:
Code:
/run local f = GetMouseFocus(); if f then DEFAULT_CHAT_FRAME:AddMessage(f:GetName()) end
as a macro to a key, and activating it, while the mouse is over the button you want to know the name of.
5.3 DPS-Macro
For a simple DPS-Macro simply create a normal dps macro and add a:
/click ActionButton10
at the beginning (ActionButton10 should be the Button you bound the assistmacro to)
and a
/targetlasttarget
at the end (to get it 'targetfree' if you need), and drag it to where '2' is bound.
So for example for a Mage this could look like this:
Code:
/click ActionButton10
/cast Fireball
/targetlasttarget
Well know your basic ftl macros should be working, and you can play arround/ get comfortable with them.
I hope the above is not as hard to understand, I tryed to reduce it to the necessary steps as much as i could.
IF you can get the above running, and have more advanced questions about, for exmaple, /castsequences or using modifiers in the macros, feel free to ask, but I thought I keep it 'simple' in the beginning and not to 'throw all in your face' at the first time....
Edit: corrected some errors
Connect With Us