I swear to god if I see another AHK script that uses Keywait and Controlsend when dealing with WoW, I'm going to shoot myself....I wish the sorn script was never published.

Please refer to the Wiki (see link above) and search for AutoHotkey. The method of scripting listed there is uses about 5x less characters then the controlsend wowid%XX method. It is also FAR easier to add new hotkeys, and just reading it over will allow you to understand more about creating new hotkeys using AHK then any other method.

I apologies for the above bluntness, and as a reconciliation, I've copied the opening script of your autohotkey.ahk file:

ClonesPush(strKeys)
{
global WowWinId1
global WowWinId2
global WowWinId3
global WowWinId4
global WowWinId5
IfWinNotActive, ahk_id %WowWinId1%
ControlSend, , %strKeys%, ahk_id %WowWinId1%
IfWinNotActive, ahk_id %WowWinId2%
ControlSend, , %strKeys%, ahk_id %WowWinId2%
IfWinNotActive, ahk_id %WowWinId3%
ControlSend, , %strKeys%, ahk_id %WowWinId3%
IfWinNotActive, ahk_id %WowWinId4%
ControlSend, , %strKeys%, ahk_id %WowWinId4%
IfWinNotActive, ahk_id %WowWinId5%
ControlSend, , %strKeys%, ahk_id %WowWinId5%
}

;Grab unique window ID's
WinGet, WowWinId, List, World of Warcraft
It doesn't matter if you are using less then 5 chars, this works for 2, 3 or 4.

Now, all your normal key broadcasts will look like this:

~1::ClonesPush("{1 down}{1 up}")

The ~ makes it occur on the active window as well as the inactive windows. Take out the ~ and it will ONLY occur on the inactive windows:

Up::ClonesPush("{Up down}")
Up Up::ClonesPush("{Up up}")
Down::ClonesPush("{Down down}")
Down Up::ClonesPush("{Down up}")
~Left::ClonesPush("{Left down}")
~Left Up::ClonesPush("{Left up}")
~Right::ClonesPush("{Right down}")
~Right Up::ClonesPush("{Right up}")

The above will cause Active + Inactive windows to turn left or right (to follow opponents in PvP), but only move the inactive window (alts) forward or backward.

If you wish to use shift + something, alt + something, or ctrl + something, you insert a special character in front of the hotkey to denote the modifier, then on the right of the :: add the appropriate script:

~+1::ClonesPush("{Shift down}{1 down}{1 up}{Shift up}")
The + means shift. This will cause the active + inactive windows to key Shift 1.

~^1::ClonesPush("{Ctrl down}{1 down}{1 up}{Ctrl up}")
The ^ means Ctrl.

~!1::ClonesPush("{Alt down}{1 down}{1 up}{Alt up}")
The ! means Alt.

I hope this helps. You should be able to figure the rest out from here on. It is basically copying the above lines and pasting/editing them until you've got all the keys you wish to use mapped.

The above script is FAR more stable then using Keywait and Controlsend, as frequently that script will miss a step and not release a key (such as a movement key) and your alts will be running for the hills, or spinning in a daze.

I will post my AHK scripts for those just wishing to copy/paste it at a later point.

I also have a separate hotkey file, which is loaded up using a certain hotkey, that passes every key on my keyboard through to the alts, so that I may type in sync on all my WoWs (to spam chat or mass Emote someone).