You are on page 1of 3

////////////////////////////////////////////////////////////////////////////////

///////////////////
// Dota 2 Quickcast Extension Script v1.0
////////////////////////////////////////////////////////////////////////////////
///////////////////
// Created by: 8e8
// Updated on: 9/17/2015
////////////////////////////////////////////////////////////////////////////////
///////////////////
// Summary: A script to extend the behavior of the quickcast function by giving
users the ability
// to toggle quickcasting on or off during the game without having to go into th
e settings menu
// or use console commands. It also makes quickcasting trigger OnKeyUp instead o
f the default
// OnKeyDown behavior.
////////////////////////////////////////////////////////////////////////////////
///////////////////

////////////////////////////////////////////////////////////////////////////////
///////////////////
// Edit this area at your own risk
////////////////////////////////////////////////////////////////////////////////
///////////////////
// Initialize Quickcast Variables
alias +qcA1; alias +qcA2; alias +qcA3; alias +qcA4; alias +qcA5; alias +qcA6
alias +qcI1; alias +qcI2; alias +qcI3; alias +qcI4; alias +qcI5; alias +qcI6
alias +qcAK1 dota_ability_execute 0; alias +qcAK2 dota_ability_execute 1; alias
+qcAK3 dota_ability_execute 2; alias +qcAK4 dota_ability_execute 3; alias +qcAK5
dota_ability_execute 4; alias +qcAK6 dota_ability_execute 5
alias +qcIK1 dota_item_execute 0; alias +qcIK2 dota_item_execute 1; alias +qcIK3
dota_item_execute 2; alias +qcIK4 dota_item_execute 3; alias +qcIK5 dota_item_e
xecute 4; alias +qcIK6 dota_item_execute 5
// Actions
alias "qcA1On" "alias qcA1 dota_ability_quickcast 0"
alias "qcA1Off" "alias qcA1 dota_ability_execute 0"
alias "qcA2On" "alias qcA2 dota_ability_quickcast 1"
alias "qcA2Off" "alias qcA2 dota_ability_execute 1"
alias "qcA3On" "alias qcA3 dota_ability_quickcast 2"
alias "qcA3Off" "alias qcA3 dota_ability_execute 2"
alias "qcA4On" "alias qcA4 dota_ability_quickcast 3"
alias "qcA4Off" "alias qcA4 dota_ability_execute 3"
alias "qcA5On" "alias qcA5 dota_ability_quickcast 4"
alias "qcA5Off" "alias qcA5 dota_ability_execute 4"
alias "qcA6On" "alias qcA6 dota_ability_quickcast 5"
alias "qcA6Off" "alias qcA6 dota_ability_execute 5"
alias "qcI1On" "alias qcI1 dota_item_quick_cast 0"
alias "qcI1Off" "alias qcI1 dota_item_execute 0"
alias "qcI2On" "alias qcI2 dota_item_quick_cast 1"
alias "qcI2Off" "alias qcI2 dota_item_execute 1"
alias "qcI3On" "alias qcI3 dota_item_quick_cast 2"
alias "qcI3Off" "alias qcI3 dota_item_execute 2"
alias "qcI4On" "alias qcI4 dota_item_quick_cast 3"
alias "qcI4Off" "alias qcI4 dota_item_execute 3"
alias "qcI5On" "alias qcI5 dota_item_quick_cast 4"
alias "qcI5Off" "alias qcI5 dota_item_execute 4"
alias "qcI6On" "alias qcI6 dota_item_quick_cast 5"
alias "qcI6Off" "alias qcI6 dota_item_execute 5"
// Toggles
alias "qcA1TOn" "qcA1On; alias qcA1T qcA1TOff"
alias "qcA2TOn" "qcA2On; alias qcA2T qcA2TOff"
alias "qcA3TOn" "qcA3On; alias qcA3T qcA3TOff"
alias "qcA4TOn" "qcA4On; alias qcA4T qcA4TOff"
alias "qcA5TOn" "qcA5On; alias qcA5T qcA5TOff"
alias "qcA6TOn" "qcA6On; alias qcA6T qcA6TOff"
alias "qcI1TOn" "qcI1On; alias qcI1T qcI1TOff"
alias "qcI2TOn" "qcI2On; alias qcI2T qcI2TOff"
alias "qcI3TOn" "qcI3On; alias qcI3T qcI3TOff"
alias "qcI4TOn" "qcI4On; alias qcI4T qcI4TOff"
alias "qcI5TOn" "qcI5On; alias qcI5T qcI5TOff"
alias "qcI6TOn" "qcI6On; alias qcI6T qcI6TOff"
alias "qcA1TOff" "qcA1Off; alias qcA1T qcA1TOn"
alias "qcA2TOff" "qcA2Off; alias qcA2T qcA2TOn"
alias "qcA3TOff" "qcA3Off; alias qcA3T qcA3TOn"
alias "qcA4TOff" "qcA4Off; alias qcA4T qcA4TOn"
alias "qcA5TOff" "qcA5Off; alias qcA5T qcA5TOn"
alias "qcA6TOff" "qcA6Off; alias qcA6T qcA6TOn"
alias "qcI1TOff" "qcI1Off; alias qcI1T qcI1TOn"
alias "qcI2TOff" "qcI2Off; alias qcI2T qcI2TOn"
alias "qcI3TOff" "qcI3Off; alias qcI3T qcI3TOn"
alias "qcI4TOff" "qcI4Off; alias qcI4T qcI4TOn"
alias "qcI5TOff" "qcI5Off; alias qcI5T qcI5TOn"
alias "qcI6TOff" "qcI6Off; alias qcI6T qcI6TOn"
// Set Individual Quickcast Toggle Keys to On
alias "qcSATOn" "alias qcA1T qcA1TOn; alias qcA2T qcA2TOn; alias qcA3T q
cA3TOn; alias qcA4T qcA4TOn; alias qcA5T qcA5TOn; alias qcA6T qcA6TOn"
alias "qcSITOn" "alias qcI1T qcI1TOn; alias qcI2T qcI2TOn; alias qcI3T q
cI3TOn; alias qcI4T qcI4TOn; alias qcI5T qcI5TOn; alias qcI6T qcI6TOn"
// Set Individual Quickcast Toggle Keys to Off
alias "qcSATOff" "alias qcA1T qcA1TOff; alias qcA2T qcA2TOff; alias qcA3T
qcA3TOff; alias qcA4T qcA4TOff; alias qcA5T qcA5TOff; alias qcA6T qcA6TOff"
alias "qcSITOff" "alias qcI1T qcI1TOff; alias qcI2T qcI2TOff; alias qcI3T
qcI3TOff; alias qcI4T qcI4TOff; alias qcI5T qcI5TOff; alias qcI6T qcI6TOff"
// Toggle Quickcast On Globally
alias "qcOn" "qcA1TOn; qcA2TOn; qcA3TOn; qcA4TOn; qcA5TOn; qcA6TOn; q
cI1TOn; qcI2TOn; qcI3TOn; qcI4TOn; qcI5TOn; qcI6TOn; qcSATOff; qcSITOff"
alias "qcTOn" "qcOn; alias qcT qcTOff"
// Toggle Quickcast Off Globally
alias "qcOff" "qcA1TOff; qcA2TOff; qcA3TOff; qcA4TOff; qcA5TOff; qcA6T
Off; qcI1TOff; qcI2TOff; qcI3TOff; qcI4TOff; qcI5TOff; qcI6TOff; qcSATOn; qcSITO
n"
alias "qcTOff" "qcOff; alias qcT qcTOn"
// Toggle Quickcast
alias "qcT1" "qcA1T; qcA2T; qcA3T; qcA4T; qcA5T; qcA6T; qcI1T; qcI2T;
qcI3T; qcI4T; qcI5T; qcI6T"
// Global Hold-to-Toggle
alias "+qcT2" "qcT1"
alias "-qcT2" "qcT1"
// Individual Hold-to-Toggle
alias "+qcT3" "alias -qcAK1 qcA1T; alias -qcAK2 qcA2T; alias -qcAK3 qc
A3T; alias -qcAK4 qcA4T; alias -qcAK5 qcA5T; alias -qcAK6 qcA6T; alias -qcIK1 qc
I1T; alias -qcIK2 qcI2T; alias -qcIK3 qcI3T; alias -qcIK4 qcI4T; alias -qcIK5 qc
I5T; alias -qcIK6 qcI6T"
alias "-qcT3" "alias -qcAK1 qcA1; alias -qcAK2 qcA2; alias -qcAK3 qcA3
; alias -qcAK4 qcA4; alias -qcAK5 qcA5; alias -qcAK6 qcA6; alias -qcIK1 qcI1; al
ias -qcIK2 qcI2; alias -qcIK3 qcI3; alias -qcIK4 qcI4; alias -qcIK5 qcI5; alias
-qcIK6 qcI6"
-qcT3 // Initialize Ability/Item Keys
////////////////////////////////////////////////////////////////////////////////
///////////////////
// Replace with your own binds
////////////////////////////////////////////////////////////////////////////////
///////////////////
// Abilities
bind "q" "+qcAK1"
bind "w" "+qcAK2"
bind "e" "+qcAK3"
bind "t" "+qcAK4"
bind "g" "+qcAK5"
bind "r" "+qcAK6" // Ultimate
// Items
bind "1" "+qcIK1"
bind "2" "+qcIK2"
bind "3" "+qcIK3"
bind "4" "+qcIK4"
bind "5" "+qcIK5"
bind "6" "+qcIK6"
// Toggles
bind "z" "qcT" // Toggle Quickcast ON/OFF Globally
bind "x" "qcT1" // Toggle Quickcast
bind "space" "+qcT2" // Hold-to-Toggle Quickcast
bind "c" "+qcT3" // Hold-to-Toggle Quickcast on Key

////////////////////////////////////////////////////////////////////////////////
///////////////////
// Uncomment the first line below to enable quickcast by default, or the 2nd lin
e to disable it
////////////////////////////////////////////////////////////////////////////////
///////////////////
//qcTOn
qcTOff

You might also like