- Important: Enable Quickcast.
- The default shortcuts are used.
- The neutral item key is set to 'J'.
- All macros start by closing the game chat and shop with the Escape key and press F1 to select your hero.
The loop macros will first trigger all your items because they have no cast animation; they can be used instantly. Then it will loop between every item and ability every 70 ms (the lowest time). It also holds down the Alt key so it can also self-cast your bottom items (V, B, N) and your neutral item. For example, you will be able to self-cast Lotus Orb, Glimmer Cape, Disperser, etc. If you are stunned, be careful not to use the macro, or it will start to glitch as if all your inputs were queued. The macro also sends a right-click input, so you just have to move your cursor where you want to go or point at the enemies.
Here is the script triggered with '`', which is the key to the left of the '1' button:
Code: Select all
Toggle = 0
#MaxThreadsPerHotkey 2
`::
SendInput, {esc}{esc}{F1}
Toggle := !Toggle
SendInput, jzxcvbn{alt down}jvbn{alt up}{tab}
While Toggle{
SendInput, jzxcvbnrqwedf{alt down}jvbnrqwedf{alt up}{tab}
Click, right
sleep 70
}
return
Queued Macro:
The queued macro will press Shift and trigger several items in an order. The order is important because some can stop the queue and not trigger the rest. You must always start with self-cast items, then items that have no target like Blade Mail or Shiva's Guard. Then sort your items by cast range, for example, Rod of Atos, then Orchid. I do not recommend items with a low cast range like Halberd. Then use a disabling spell like a stun, a root, a slow, etc. You can start with a self-cast ability, for example, use Strafe on Clinkz, then your items, then Tar Bomb. The input will look like that: qzxc{alt down}bn{alt up}. You can leave some input unused, for example, I like to keep the 'C' key for Shadow Blade and use it after a kill, for example.
Code: Select all
self_items = jn
items = jzxcvb
abilities = q
^RButton::
SendInput, {esc}{esc}1s
SendInput, {shift down}{alt down}%self_items%{alt up}%items%%abilities%a{shift up}
return
Don't forget to include these lines in your code:
Code: Select all
Toggle = 0
#MaxThreadsPerHotkey 2
Code: Select all
f7::
Toggle := !Toggle
While Toggle{
Click
sleep 1
}
return
Code: Select all
f9::
Toggle := !Toggle
While Toggle{
Click, left, 960, 615
sleep 50
Click, left, 1500, 870
sleep 50
}
return
Toggle = 0
#MaxThreadsPerHotkey 2
Code: Select all
f4::
wait = 90
Toggle := !Toggle
While Toggle{
sendinput {enter}
sleep wait
sendinput %wait%
sleep wait
sendinput {enter}
sleep wait
if (wait > 1)
wait -= 1
sleep wait
}
Code: Select all
f4::
Toggle := !Toggle
While Toggle{
sendinput s
Click, right
sleep 70
}
return