Dota 2
563 ratings
Advanced Keybinds
By Peewi
It is possible to bind certain actions to keys that aren't available in the options menu or to combine multiple actions into a single keypress. Here are some of them.

The guide briefly explains how to set up the autoexec.cfg file, but it helps if you already know how to use that and the console.
   
Award
Favorite
Favorited
Unfavorite
autoexec.cfg
All of the commands mentioned in this guide should be placed in the autoexec.cfg file. If you do not have one already, it is necessary to create one.

The autoexec.cfg file is placed in the "\Steam\steamapps\common\dota 2 beta\dota\cfg" folder. The Steam folder can usually be found at "C:\Program Files (x86)\Steam", but may be elsewhere.

autoexec.cfg is a regular text file, it just has a different extension. You can use notepad or any other text editor you might prefer to edit it. When creating the file, make sure it is saved as "autoexec.cfg" and not "autoexec.cfg.txt".
Make sure the key you want to use is available
If the key you try to bind is already in use, binding it in autoexec.cfg might not work.

To unbind a key, click it in the controls settings and then right click. If you're not sure what command a key is bound to, you can bind it to something else and then unbind it.
Key names
If you are unsure what the correct name for a key is, binding it in the settings menu will show it.

Don't forget to unbind a key after checking it in this way.
Lock camera to hero
A couple of different ways to have the camera follow your hero.

In the examples, replace <key> with the key you want to use.

Hold to follow hero
Moves the camera to the hero and follows it while held. The camera is influenced by the mouse. Moving the camera in any other way stops it following, even if the key remains held
alias +loosefollow "+dota_camera_follow; -dota_camera_follow; +dota_camera_follow" alias -loosefollow "-dota_camera_follow" bind <key> +loosefollow

Same as above, but edge panning is disabled while the key is held.
alias +loosefollow "dota_camera_edgemove 0; +dota_camera_follow; -dota_camera_follow; +dota_camera_follow" alias -loosefollow "dota_camera_edgemove 1; -dota_camera_follow" bind <key> +loosefollow

Completely locks the camera, centered on the hero. Other methods of camera movement are disabled while in use. Middle mouse button can be used, but the camera snaps back as soon as it is released.
alias +strictfollow "dota_camera_lock 1" alias -strictfollow "dota_camera_lock 0" bind <key> +strictfollow

You can also set dota_camera_hold_select_to_follow and then use the standard select hero button.
dota_camera_hold_select_to_follow 1

Toggle follow hero
Press to toggle the camera following the hero. Edge panning is disabled while in use.
NOTE: Moving the camera with keyboard keys or the middle mouse button will make it stop following the hero, but edge panning will remain off until the key is pressed again.
alias loosefollowon "dota_camera_edgemove 0; +dota_camera_follow; -dota_camera_follow; +dota_camera_follow; alias loosefollowtoggle loosefollowoff" alias loosefollowoff "dota_camera_edgemove 1; -dota_camera_follow; alias loosefollowtoggle loosefollowon" alias loosefollowtoggle loosefollowon bind <key> loosefollowtoggle

Press to toggle the camera following the hero. Other methods of camera movement are disabled while in use. Middle mouse button can be used, but the camera snaps back as soon as it is released.
bindtoggle <key> dota_camera_lock

Other console commands relevant to locking the camera
dota_camera_lock_view_helper
Set dota_camera_lock_view_helper to 0 to disable the mouse influencing the camera when following the hero.

dota_camera_lock_mouse_lead
Controls how far the camera moves based on mouse movement. The default value is 220. Could cause undesired camera movement if set too high.
Move camera to specific locations
There are commands for moving the camera to specific locations. Here are binds for instantly moving the camera to each of the rune spots and the fountains. The aliases should be self-explanatory.
Replace <key> with the key you want to use.

Runes
alias toprune "dota_camera_setpos -2200 1800" alias botrune "dota_camera_setpos 3000 -2500" bind <key> toprune bind <key> botrune
Fountains
alias radiantfountain "dota_camera_setpos -7000 -6500" alias direfountain "dota_camera_setpos 7000 6250" bind <key> radiantfountain bind <key> direfountain
Cycle through the runes and your hero
This bind will on the first press view the top rune, on the second press view the bottom rune and on the third press view your hero and then start over. Note that using a different method of camera movement won't reset this cycle.
alias toprunecycle "dota_camera_setpos -2200 1800; alias runecycle botrunecycle" alias botrunecycle "dota_camera_setpos 3000 -2500; alias runecycle centerhero" alias centerhero "+dota_camera_follow; -dota_camera_follow; +dota_camera_follow; -dota_camera_follow; alias runecycle toprunecycle" alias runecycle toprunecycle bind <key> runecycle


Hold to look

Push the button to look at the given location and return the camera to your hero when the button is released.
Hold to look at runes
alias centerhero "+dota_camera_follow; -dota_camera_follow; +dota_camera_follow; -dota_camera_follow;" alias +toprune "dota_camera_setpos -2200 1800" alias +botrune "dota_camera_setpos 3000 -2500" alias -toprune centerhero alias -botrune centerhero bind <key> +toprune bind <key> +botrune
Hold to look at fountains
alias centerhero "+dota_camera_follow; -dota_camera_follow; +dota_camera_follow; -dota_camera_follow;" alias +radiantfountain "dota_camera_setpos -6989 -7053 1243" alias +direfountain "dota_camera_setpos 6976 5753 1238" alias -radiantfountain centerhero alias -direfountain centerhero bind <key> +radiantfountain bind <key> +direfountain

Other locations
To make a bind for a different location, use the dota_camera_getpos command to get the current camera position use that with your dota_camera_setpos command.
Courier delivery with speed boost
Courier delivery and courier speed boost can both be bound in the options, but not to the same key. With the following, the courier will deliver your items and activate the speed boost (if available) with a single keypress.

Replace <key> with the key you want to use.
bind <key> "dota_courier_deliver; dota_courier_burst"
Chat wheel
Specific phrases on a key
Only the original set of chat wheel phrases can be bound in the settings menu, but any one of them can be bound with the console/autoexec.cfg.

Replace <key> with the key you wish to use and xx with the number for the phrase you want. See list of phrases below.
bind <key> "chatwheel_say xx"

Multiple chat wheels
It is possible to have multiple chat wheels bound to different keys. This configures the chat wheel each time you press the button and as such will overwrite any changes you may have made to the chat wheel in the settings menu.

chat_wheel_phrase_0 is the rightmost phrase on the wheel and from there it goes in clockwise order, with the last one being 7.
Replace <key> with the key you want to use. Remember to use separate keys for each chat wheel. Replace each occurrence of xx with the number for the desired phrase, as seen in the list below. For multiple chat wheels, change the number in +mychatwheel1.
alias +mychatwheel1 “chat_wheel_phrase_0 xx; chat_wheel_phrase_1 xx; chat_wheel_phrase_2 xx; chat_wheel_phrase_3 xx; chat_wheel_phrase_4 xx; chat_wheel_phrase_5 xx; chat_wheel_phrase_6 xx; chat_wheel_phrase_7 xx; +chatwheel” bind <key> +mychatwheel1

This example binds a chat wheel to Y and a second chat wheel to U.

alias +mychatwheel1 "chat_wheel_phrase_0 8; chat_wheel_phrase_1 1; chat_wheel_phrase_2 2; chat_wheel_phrase_3 3; chat_wheel_phrase_4 57; chat_wheel_phrase_5 58; chat_wheel_phrase_6 6; chat_wheel_phrase_7 29; +chatwheel" alias -mychatwheel1 "-chatwheel" bind y +mychatwheel1 alias +mychatwheel2 "chat_wheel_phrase_0 64; chat_wheel_phrase_1 65; chat_wheel_phrase_2 61; chat_wheel_phrase_3 63; chat_wheel_phrase_4 67; chat_wheel_phrase_5 68; chat_wheel_phrase_6 66; chat_wheel_phrase_7 7; +chatwheel" alias -mychatwheel2 "-chatwheel" bind u +mychatwheel2

Phrase list
A list of all the chat wheel phrases and what number they have
chatwheel_say 0 "Okay." chatwheel_say 1 "Careful!" chatwheel_say 2 "Get Back" chatwheel_say 3 "Need Wards" chatwheel_say 4 "Stun" chatwheel_say 5 "Help" chatwheel_say 6 "Push" chatwheel_say 7 "Well played" chatwheel_say 8 "Missing" chatwheel_say 9 "Missing top" chatwheel_say 10 "Missing mid" chatwheel_say 11 "Missing bottom" chatwheel_say 12 "Go!" chatwheel_say 13 "Initiate!" chatwheel_say 14 "Follow me" chatwheel_say 15 "Group up" chatwheel_say 16 "Spread out" chatwheel_say 17 "Split farm" chatwheel_say 18 "Attack now!" chatwheel_say 19 "Be right back" chatwheel_say 20 "Dive!" chatwheel_say 21 "On my way" chatwheel_say 22 "Get ready" chatwheel_say 23 "Bait" chatwheel_say 24 "Heal" chatwheel_say 25 "Mana" chatwheel_say 26 "Out of mana" chatwheel_say 27 "Cooldown" chatwheel_say 28 "Ulti ready" chatwheel_say 29 "Returned" chatwheel_say 30 "All miss" chatwheel_say 31 "Incoming" chatwheel_say 32 "Invis enemy" chatwheel_say 33 "Enemy has rune" chatwheel_say 34 "Split push" chatwheel_say 35 "Coming to gank" chatwheel_say 36 "Request gank" chatwheel_say 37 "Under tower" chatwheel_say 38 "Deny tower" chatwheel_say 39 "Buy courier" chatwheel_say 40 "Upgrade courier" chatwheel_say 41 "We need detection" chatwheel_say 42 "They have detection" chatwheel_say 43 "Buy TP" chatwheel_say 44 "Re-use courier" chatwheel_say 45 "Deward" chatwheel_say 46 "Building Mek" chatwheel_say 47 "Building Pipe" chatwheel_say 48 "Stack and pull" chatwheel_say 49 "Pull creeps" chatwheel_say 50 "Pulling creeps" chatwheel_say 51 "Stack neutrals" chatwheel_say 52 "Jungling" chatwheel_say 53 "Roshan" chatwheel_say 54 "Affirmative" chatwheel_say 55 "Wait" chatwheel_say 56 "Pause" chatwheel_say 57 "Current Time" chatwheel_say 58 "Check runes" chatwheel_say 59 "Smoke gank!" chatwheel_say 60 "Good luck" chatwheel_say 61 "Nice" chatwheel_say 62 "Thanks" chatwheel_say 63 "Sorry" chatwheel_say 64 "Don't give up" chatwheel_say 65 "That just happened" chatwheel_say 66 "Game is hard" chatwheel_say 67 "New meta" chatwheel_say 68 "My bad" chatwheel_say 69 "Regret" chatwheel_say 70 "Relax" chatwheel_say 73 "Good game" chatwheel_say 74 "Good game, well played" chatwheel_say 75 "(All) Good game" chatwheel_say 76 "(All) Good game, well played" chatwheel_say 77 "What should I buy?" chatwheel_say 78 "I'm retreating" chatwheel_say 79 "Space created" chatwheel_say 80 "Whoops" chatwheel_say 81 "Destroy the tower, then get back" chatwheel_say 82 "Destroy the barracks, then get back" chatwheel_say 83 "Ward the bottom rune" chatwheel_say 84 "Ward the top rune" chatwheel_say 85 "Zeus Ult Now!"
140 Comments
Sunless Knight 5 Aug, 2024 @ 11:27am 
Напишите пожалуйста мне в профиль что я адский сухофрукт на арке
Moldi Stromboly 16 Jun, 2024 @ 12:46pm 
Non-pro/casual tip: If you're a casual player who just wants the camera semi-locked all the time but still with good visibility, you can do the +loosefollow and just leave out the -loosefollow bit. This will make it so when you press the button, it acts more like a toggle and you don't have to muck about the camera anymore!

alias +loosefollow "+dota_camera_follow; -dota_camera_follow; +dota_camera_follow"
bind <key> +loosefollow

(Yes yes, limited map awareness, not going to be good because long-range targeting, etc. I've heard it all before, just let people who have physical disabilities or limitations enjoy the game casually, please)
AzE 18 Jan, 2017 @ 7:05am 
Cheese, If you're ingame, just type in console: exec autoexec.cfg

that is if you name the cfg file to autoexec.cfg, if not then change it to whatever the file name
you put
Cheese and Vodka 15 Jan, 2017 @ 11:31am 
Do I need to restart steam for the changes to take place?
Thanks :blinkygoo:
1978 FIFA World Cup knockout sta 15 Jul, 2016 @ 12:32pm 
They should add they flollow character to the optipons, just one thing i liked better from LoL. And mtchmaking. that was better.
qrocky 25 Dec, 2015 @ 9:12pm 
how bind 'disconnect' ???
Peewi  [author] 25 Dec, 2015 @ 9:03am 
This guide has not been updated for Reborn and most likely won't be soon.
Aqua Snake 24 Dec, 2015 @ 1:03pm 
I used this guide before with the old clinet. Does this still work with Reborn? Also it seems the Rune positions were adjusted a bit in the 6.86 update. Will it be possible to update the guide reflecting this?
qrocky 9 Oct, 2015 @ 11:31pm 
how bond 'disconnect' ???
enc0unter 15 Sep, 2015 @ 7:07pm 
Greetings, this guide realy helped me out with some things, but i`d like an commans that Selects my hero, AND make the camera follw him, which will stop if i move the mouse to edges. (he camera lock) MAybe it is even in there but my english isn`t that good :/