Skip to content

Instantly share code, notes, and snippets.

@fleetimee
Last active January 21, 2024 12:30
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save fleetimee/c11228249396f6acc4aa9e26288a9f78 to your computer and use it in GitHub Desktop.
Save fleetimee/c11228249396f6acc4aa9e26288a9f78 to your computer and use it in GitHub Desktop.
Dota 2
// DOTA autoexec.cfg REFERENCE preset - get latest from https://dev.dota2.com/showthread.php?t=194985
// Save as: Steam\steamapps\common\dota 2 beta\game\dota\cfg\autoexec.cfg (make sure extension is .cfg not .cfg.txt)
//
// To optimally read/edit this cfg, use a text processor featuring 132 chars per line and syntax highlighting to C++
// Disable options/binds/commands you do not want forced by this cfg by starting lines with // C++ style line comment
// Some reference hotkeys and options use tweaked values. Will override user settings if enabled (un-commented).
//
// What's new [2020-06-20]
// Not much, just added a few missing binds and ui options; no longer forcing render quality to 0.71
//
//--------------------------------------------------------------------------------------------------------------------------------
// Dota 2 cfg tweaking is very limited ever since Reborn, so also use tweaked launch options:
// 1. Add Dota 2 launch options: -autoconfig_level 0 -benchframes 1 -bench +reset_gameconvars
// Run the game once - it will close itself shortly
// 2. Remove above options, and add:
// for POTATO-GRADE/ONBOARD HW -dx9 -nod3d9ex [only in Borderless Window!]
// for LOW-GRADE HW -dx9
// for MID-GRADE HW -dx11
// for HIGH-GRADE HW -dx11 [or] -vulkan
// for OTHER OS -gl
// -nod3d9ex is incompatible with Fullscreen mode (alt-tab issues) so switch to Borderless Window if used (with -dx9 or -dx11)
// 3. Enable "Use advanced settings" under Settings - Video and restart the game.
// 4. Optional potato(ish) options:
// -swap_chain_as_is -forcepow2dxt -maxtextureres 128 -oldtexturestreaming
// 5. Optional performance launch options that you can try case by case if your hardware is stable:
// -high -mainthreadpriority 1 [or] -high -mainthreadpriority 2
// 6. Optional to facilitate reporting issues, add launch options: -consolelog -conclearlog -con_timestamp +sys_info
// and then share the file: Steam\steamapps\common\dota 2 beta\game\dota\console.log
// 7. Optional troubleshooting launch options that you can try case by case:
// -nogammaramp -novr -nojoy -noime -nobreakpad -nogamestats -noloaderlockprobe -disablehangwatchdog
// -threads 2 -onethreadpool -dx9renderthreadstack -dx11renderthreadstack -disallowhwmorph -deferTextureLoads
// 8. Optional launch parameters for the Steam executable (adjust to your path) Right-click Desktop - New - Shortcut:
// "C:\Program Files (x86)\Steam\Steam.exe" -silent -forceservice -single_core -windowed -manuallyclearframes 0 -nodircheck -norepairfiles -noverifyfiles -nocrashmonitor -nocrashdialog -vrdisable -nofriendsui -skipstreamingdrivers +"@AllowSkipGameUpdate 1 -
// Bonus, the definitive steamwebhelper_killer! Completely remove Steam browser with: -no-browser
// Might want to use the Toggle UI Animations off after matches at https://github.com/AveYo/D-OPTIMIZER/releases/tag/4.2
// For significant fps gain (and glancevalue) try the No-Bling mod at https://github.com/No-Bling/DOTA
//--------------------------------------------------------------------------------------------------------------------------------
//
echoln
log_color General 00FFFFFF | grep %; // set cyan color
echoln " _______ ______ ______ ________ __ ___ ___ __ ________ _______ ______ "
echoln " | __ \ / \ | _ \ | | | | | \/ | | | | / | ____| | _ \ "
echoln " | | | | | ,~~, | | |_) | `~~| |~~` | | | \ / | | | `~~~/ / | |__ | |_) |"
echoln " | | | | AVEYO`S | | | | | ___/ | | | | | |\/| | | | / / | __| | / "
echoln " | `~~` | | `~~` | | | | | | | | | | | | | / /~~~, | |____ | |\ \ "
echoln " |_______/ \______/ |__| |__| |__| |__| |__| |__| /_______| |_______| |__| \__\"
echoln; echoln " SHORT COMMANDS (LOCAL ONLY): "
echoln " ---------------------------------------------------------------------------------------------------- "
echoln " | RR Reload .cfg from disk | FF Disconnect / reset menu | QQ Quit game fast |"
echoln " | GG Start empty test game | BB/HH Spawn creeps / neutrals | VT Video Tweaks |"
echoln " ---------------------------------------------------------------------------------------------------- "
echoln; echoln " HOTKEY TOGGLES IN-GAME (MUST FIRST FREE THEM IN GUI TO USE):"
echoln " ---------------------------------------------------------------------------------------------------- "
echoln " | SPACE Hold Follow Any | MWHEELUP Free, Select Hero | MWHEELDOWN Select All Others |"
echoln " | INS,CAPS UnBound Follow Any | HOME,MOUSE5 Bound Follow Hero | PGUP Large Follow Edge Bounds |"
echoln " | DEL,CTRL Stop Follow Any | END,MOUSE4 Offset Follow Undo | PGDN Reset Follow Edge Bounds |"
echoln " | SCROLLLOCK Window + EdgePan | KP/,KP+,KP- Shadows, Vol, Music | G,U Voice OpenMic Team,Party |"
echoln " ---------------------------------------------------------------------------------------------------- "
log_color General 00000000 | grep %; // set default color
// Behaviour score printing:
log_color General FF00FFFF | grep %; // set pink color
developer 1; dota_game_account_client_debug | alias; developer 0; echoln; alias | grep behavior_score; echoln
log_color General 00000000 | grep %; // set default color
// System info printing:
log_verbosity InputService off | grep %;
sys_info | grep Line|Build|OS|Game|UI|Misc|Time|-bit|s[\s]priority|CPUs|brand|Render[\s]s|Driver|Vid|physical[\s]mem
echoln
//--------------------------------------------------------------------------------------------------------------------------------
log_verbosity Console InputService off | grep %; // Stop console spew ( resumed at the end of the script )
//--------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) DOTA 2 REFERENCE CFG HOTKEYS tweaked: //? default: [] '
//--------------------------------------------------------------------------------------------------------------------------------
// Console hotkeys are worth using even if ALT modifiers can't be set & no quickast onkeyup. Matching GUI hotkeys take precedence
alias ' ABILITIES GUI Suggestion: '
//bind "Q" dota_ability_execute 0; // Ability 1 Q [Q]
//bind "W" dota_ability_execute 1; // Ability 2 W [W]
//bind "E" dota_ability_execute 2; // Ability 3 E [E]
//bind "D" dota_ability_execute 3; // Ability 4 D [D]
//bind "F" dota_ability_execute 4; // Ability 5 F [F]
//bind "R" dota_ability_execute 5; // Ability Ultimate R [R]
alias ' ITEMS GUI Suggestion: '
//bind "Z" dota_item_quick_cast 0; // Item 1 first item quickcast 1 [Z]
//bind "X" dota_item_execute 1; // Item 2 (onkeyup only in GUI) 2 [X]
//bind "C" dota_item_execute 2; // Item 3 3 [C]
//bind "V" dota_item_execute 3; // Item 4 4 [V]
//bind "B" dota_item_execute 4; // Item 5 5 [B]
//bind "N" dota_item_execute 5; // Item 6 6 [N]
//bind "T" dota_item_execute 15; // Teleport cast ALT+T [T]
//bind "T" dota_item_quick_cast 15; // Teleport quickcast
//bind "G" dota_item_execute 16; //? Neutral-item cast ALT+G [G]
//bind "G" dota_item_quick_cast 16; //? Neutral-item quickcast
alias ' CONTROL GROUPS GUI Suggestion: '
//bind "1" +dota_control_group 1; // Group 1 Z [1]
//bind "2" +dota_control_group 2; // Group 2 X [2]
//bind "3" +dota_control_group 3; // Group 3 C [3]
//bind "4" +dota_control_group 4; // Group 4 V [4]
//bind "5" +dota_control_group 5; // Group 5 B [5]
//bind "6" +dota_control_group 6; // Group 6 N [6]
//bind "7" +dota_control_group 7; // Group 7 [7]
//bind "8" +dota_control_group 8; // Group 8 [8]
//bind "9" +dota_control_group 9; // Group 9 [9]
//bind "0" +dota_control_group 10; // Group 10 0 [0]
alias ' UNIT ACTIONS - SELECTION GUI Suggestion: '
//bind "F1" +dota_camera_follow; // Select Hero [F1]
//bind \ dota_select_all; //? Select All Units ALT+F1
//bind \ dota_select_all_others; //? Select All Other Units ALT+F2
//bind "TAB" dota_cycle_selected; // Next Unit [TAB]
//dota_select_ally 1 // Select first ally
//dota_select_ally 2 // Select second ally
//dota_select_ally 3 // Select third ally
//dota_select_ally 4 // Select fourth ally
//dota_select_ally 5 // Select fifth ally
alias ' UNIT ACTIONS - ACTIVITY GUI Suggestion: '
//bind "A" mc_attack; // Attack Move / Force Attack [A]
//bind "S" +dota_stop; // Cancel / Stop [S]
//bind "H" dota_hold; // Hold Position [H]
//bind "M" mc_move; // Move [M]
//bind "RALT" +dota_unit_movetodirection; //? Directional Move (Ignore PathFinding)
//bind "K" mc_patrol; //? Patrol [K]
//bind "J" dota_glyph; // Activate Glyph [J]
//bind "P" dota_radar; // Activate Scan [P]
//bind \ use_item_client player_loadout action_item; // Action Item
//bind "BACKSPACE" use_item_client current_hero taunt; //? Taunt Item BACKSPACE
alias ' SHOP ACTIONS GUI Suggestion: '
//bind "F2" dota_select_courier; // Select Courier [F2]
//bind "F3" dota_courier_deliver; // Courier Deliver Items [F3]
//bind "F10" dota_courier_burst; //? Courier Shield (former Speed Burst) F10
//bind "F4" toggleshoppanel; // Open Shop [F4]
//bind "F5" dota_purchase_quickbuy; // Quickbuy [F5]
//bind "F8" dota_purchase_stickybuy; // Stickybuy [F8]
//bind "F6" stash_grab_all; //? Take Stash F6
alias ' INTERFACE GUI Suggestion: '
//bind "`" +showscores; // Scoreboard [`]
//bind "F20" dota_show_killgraph; // DeathSummary
//bind "F9" dota_pause; // Pause [F9]
//bind "PAUSE" jpeg_screenshot; //? Screenshot PAUSE [F6]
//bind \ toggleconsole; // Console [\]
alias ' CAMERA ACTIONS GUI Suggestion: '
//bind "MOUSE3" +cameragrip; // Camera Grip [MOUSE3]
//bind "UPARROW" +forward; // Camera Forward [UPARROW]
//bind "DOWNARROW" +back; // Camera Back [DOWNARROW]
//bind "LEFTARROW" +moveleft; // Camera Left [LEFTARROW]
//bind "RIGHTARROW" +moveright; // Camera Right [RIGHTARROW]
//bind "=" camerazoomin; //? Camera Zoom In = [MWHEELUP]
//bind "-" camerazoomout; //? Camera Zoom Out - [MWHEELDOWN]
//bind "APP" dota_recent_event; //? Show Recent Event APP [SPACE]
//bind "I" inspectheroinworld; // Showcase View [I]
alias ' SAVED CAMERA POSITIONS GUI Suggestion: '
//bind "kp_1" dota_camera_saved_position 1; //? Position 1
//bind "kp_2" dota_camera_saved_position 2; //? Position 2
//bind "kp_3" dota_camera_saved_position 3; //? Position 3
//bind "kp_4" dota_camera_saved_position 4; //? Position 4 [kp_7]toprune [kp_8]shrine [kp_9]ancient
//bind "kp_5" dota_camera_saved_position 5; //? Position 5 [kp_4]shrine [kp_5]river [kp_6]shrine
//bind "kp_6" dota_camera_saved_position 6; //? Position 6 [kp_1]ancient [kp_2]shrine [kp_3]botrune
//bind "kp_7" dota_camera_saved_position 7; //? Position 7
//bind "kp_8" dota_camera_saved_position 8; //? Position 8
//bind "kp_9" dota_camera_saved_position 9; //? Position 9
//bind "kp_0" dota_camera_saved_position 10; //? Position 10
//bind "CLEAR" dota_camera_saved_position 5; //? Position 5 #2 fix bugged kp_5 sending vk CLEAR when NumLock off
alias ' CHAT GUI Suggestion: '
//bind "ENTER" say; // Chat to Team [ENTER]
//bind "KP_ENTER" say; // Chat to Everyone (Hold Shift) [KP_ENTER]
//bind "Y" +chatwheel; // ChatWheel [Y]
//bind "H" +herochatwheel; // Hero ChatWheel
//bind \ +spraywheel; // SprayWheel
//bind \ +iv_voicerecord_party; // Voice (party) :
//bind \ +voicerecord; // Voice (team) : Use CFG OpenMic Voice Toggle instead [G]
alias ' PHRASES - OPTIONAL GUI Suggestion: '
//bind "'" chatwheel_say "7"; //? Chat Phrase 63:Sorry ' "
//bind "," chatwheel_say "2"; //? Chat Phrase 2:Get Back , <
//bind "." chatwheel_say "6"; //? Chat Phrase 6:Push . >
//bind "/" chatwheel_say "8"; //? Chat Phrase 8:Missing / ?
alias ' CUSTOMIZE CHAT WHEEL '
//chat_wheel_phrase_0 8; // 8:Missing!
//chat_wheel_phrase_1 1; // 1:Careful! phrase_6
//chat_wheel_phrase_2 2; // 2:Get Back! phrase_5 < > phrase_7
//chat_wheel_phrase_3 3; // 3:We need wards. phrase_4 < o > phrase_0
//chat_wheel_phrase_4 4; // 4:Stun now! phrase_3 < > phrase_1
//chat_wheel_phrase_5 5; // 5:Help! phrase_2
//chat_wheel_phrase_6 6; // 6:Push now
//chat_wheel_phrase_7 7; // 7:Well played!
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) DOTA 2 REFERENCE CFG OPTIONS tweaked: //? default: [] '
//--------------------------------------------------------------------------------------------------------------------------------
alias ' GAME OPTIONS '
//dota_player_units_auto_attack_mode 1; // Auto Attack 0:Never, 1:Standard, 2:Always [1]
//dota_player_add_summoned_to_selection 1; //? Auto Select Summoned Units [0]
//dota_ability_quick_cast 1; // Double Tap Ability to Self Cast [1]
//dota_smart_doubletap 1; // Smart Double Tap 1:Alt+Key does Self Cast [1]
//dota_player_multipler_orders 1; //? Unified Orders with CTRL [0]
//dota_player_teleport_requires_halt 1; // Teleport Requires Hold/Stop [1]
//dota_player_channels_require_stop 1; // Channeled Abilities Require Hold/Stop [0]
//dota_force_right_click_attack 1; //? Right-Click to Force Attack [0]
//dota_settings_quick_target_attack 1; //? Quick Attack [0]
//dota_settings_quick_move 1; //? Quick Move [0]
alias ' GAME - ADVANCED OPTIONS '
//dota_summoned_units_auto_attack_mode_2 -1; // Summoned Unit Auto Attack -1:AsHero, 0:Never, 1:Standard, 2:Always [-1]
//dota_disable_autoattack_during_stop 1; // Disable Autoattack When Stop is Held [1]
//dota_toggle_autoattack_automatically_during_orders 1;//? Toggle Autoattack Automatically: Hold(S)=AA-Off, Stop(Alt+S)=AA-On [0]
//dota_quickcast_onkeydown 1; // Quickcast On Key Down [1]
//dota_shop_force_hotkeys 0; // Shop Always Uses Hotkeys [0]
//dota_shop_search_autofocus 1; //? Shop Search Gets Focus On Open [0]
//dota_settings_targeted_attack_move 1; //? Smart Attack Move [1]
//dota_player_auto_repeat_right_mouse 0; // Auto-repeat Right Mouse [0]
//dota_spectator_use_broadcaster_stats_panel 1; // Use Broadcaster Stats [1]
//dota_activate_window_on_match_found 1; //? Bring Dota2 to front when match found [0]
//dota_activate_window_on_hero_picking_start 1; //? Bring Dota2 to front for pick phase and game start [0]
//dota_activate_window_on_unpause 1; //? Bring Dota2 to front when unpaused [0]
//con_enable 1; //? Enable console [1]
alias ' CAMERA OPTIONS '
//dota_camera_edgemove 1; // Edge Pan [1]
//dota_camera_reverse 0; // Reverse Camera Grip [0]
//dota_reset_camera_on_spawn 0; //? Center Camera on Hero on Respawn [1]
//dota_camera_disable_zoom 0; // Disable Camera Zoom [0]
//dota_camera_hold_select_to_follow 1; //? Hold Select Hero to Follow [0]
//dota_camera_speed 5000; //? Camera Speed 5000:DotA-like [3000]
alias ' CAMERA - ADVANCED OPTIONS '
//dota_leftclick_cameragrip_new 0; // Left-Click Activates Camera Grip 0:Directly [0]
//dota_screen_shake 1; // Enable Screen Shake [1]
//dota_camera_accelerate 50; //? Camera Deceleration [49]
//dota_camera_dotatv_smooth_drag 1; //? Smoothdrag Camera when Spectating [0]
alias ' CAMERA - SAVED POSITIONS - OPTIONAL '
//dota_saved_camera_pos_1 [-7232 -6921 642.908447] //? Radiant Fountain
//dota_saved_camera_pos_2 [1317.406 -4163.625 378.905] //? Radiant Bot Shrine
//dota_saved_camera_pos_3 [2250.562 -1857.843 213.828] //? Bot Rune
//dota_saved_camera_pos_4 [-4348.093 198.2187 297.651] //? Radiant Top Shrine [kp_7]toprune [kp_8]shrine [kp_9]ancient
//dota_saved_camera_pos_5 [-530 -400 0] //? Mid River [kp_4]shrine [kp_5]river [kp_6]shrine
//dota_saved_camera_pos_6 [3446.2187 330.1562 336.967] //? Dire Bot Shrine [kp_1]ancient [kp_2]shrine [kp_3]botrune
//dota_saved_camera_pos_7 [-1760 1216 192.525253] //? Top Rune + Roshpit
//dota_saved_camera_pos_8 [-1201.781 3914.156 291.172] //? Dire Top Shrine
//dota_saved_camera_pos_9 [7168 6912 581.601013] //? Dire Fountain
//dota_saved_camera_pos_10; // User defined, not overwritten by cfg
alias ' MINIMAP OPTIONS '
//dota_minimap_simple_colors 1; //? Use Simple Colors in Minimap [0]
//dota_minimap_hide_background 0; // Hide Minimap Background [0]
//dota_hud_extra_large_minimap 0; // Use Extra Large Minimap [0]
//dota_minimap_show_hero_icon 1; // Use Alt to show Hero icons [1]
//dota_minimap_always_draw_hero_icons 1; //? Invert Alt Toggle [0]
//dota_hud_flip 0; // Show Minimap on the Right [0]
//dota_minimap_hero_size 600; // Minimap Hero Size 800:133% [600]
alias ' INTERFACE OPTIONS '
//dota_show_hero_finder 0; //? Holding ALT Highlights Hero [1]
//dota_alt_shows_neutral_spawn_boxes 1; //? Holding ALT Shows Neutral Spawnboxes [0]
//dota_alt_shows_tower_attack_range 1; //? Holding ALT Shows Tower Attack Range [0]
//dota_enable_range_finder 1; //? Show Ability Rangefinder While Casting [0]
//dota_hero_overhead_names 0; // Display Names over Healthbar 0:Heroes 1:Players 2:Nothing [0]
//dota_hud_healthbar_disable_status_display 0; // Disable Status Text i.e. "Stun bars" [0]
//dota_hud_disable_damage_numbers 1; //? Hide Damage Numbers [0]
//dota_hud_queued_orders_enable 1; // Show Queued Orders on the HUD [1]
//dota_hud_new_query_panel 0; //? Unit query overrides hero control console [1]
//dota_hud_colorblind 0; // Colorblind Mode 0:None 1:Enabled 2:Differentiate Ally [0]
//cl_auto_cursor_scale 1; // Automatically choose cursor size [1]
//cl_cursor_scale 1; // Cursor size 0.3 - 3.0 [1]
alias ' MISCELLANEOUS OPTIONS '
//dota_minimap_misclick_time 0.15; //? Minimap Misclick Protection Time 0:every click counts [0.2]
//dota_ability_self_cast_timeout 0.5; //? Double-Tap Self Cast Timeout [0.6]
//dota_minimap_hero_scalar 1; //? Dynamically Scale Hero Icons in Minimap [0]
//dota_continue_click_movement_after_cast_cancel 0; //? Move after Ability Target Cancelled Cvar longer than description [1]
//dota_camera_deatheffect 0; //? Camera Color-shift when Dead (forced always on if shaders enables) [1]
//dota_hud_netgraph 1; //? Display Network Information [0]
//dota_hide_tips_on_loading_screens 0; // Hide Tips on Loading Screens [0]
//dota_default_spoilers_blocked 0; // Default Tournament Spoiler Block to On [0]
//dota_armory_automatically_add_new_item_to_collection 0;// Automatically Add New Items to Collection Cvar longer than descr [0]
//dota_join_regional_chat_channel 0; //? Join regional chat channel on startup PRIVACY ISSUE! [1]
//dota_match_solo_queue 0; // Strict Solo Role Queue Matchmaking [0]
alias ' SOCIAL OPTIONS '
//dota_chat_enable_whispers 1; // Display Steam messages as whispers [1]
//dota_chat_allow_global 0; // Channel messages appear in other channel tabs [1]
//dota_chat_mute_everyone 0; // Mute all incoming chat [0]
//dota_chat_mute_enemies 0; // Mute chat from enemies [0]
//dota_ignore_nonfriend_invites 0; // Block party invites from non-friends [0]
//dota_rp_hide_party_unless_open 1; //? Hide party status when not in an Open Party [0]
//dota_open_party_manual_accept_invites 1; //? Do not auto-accept invites when in Open Party [0]
//dota_trading_show_requests_from 1; // Trade invites from 1:Guildmates and Friends, 0:Friends, 2:Anyone [1]
alias ' NETWORK OPTIONS '
//cl_network_quality2 -1; // Network Quality High-end Network:1, Low-end Network:0, Def: [-1]
alias ' HOTKEYS OPTIONS '
//input_button_code_is_scan_code 1; //? Bind keys based on keyboard position Hit and miss, set it in GUI [0]
//dota_enable_direct_quickcast_bindings 1; //? Enable Advanced Quickcast/Autocast Hotkeys [0]
alias ' AUDIO VOLUME '
//volume 0.5; //? Master Volume [1]
//snd_gamevolume 0.4; //? Game Sounds [1]
//snd_musicvolume 0.3; //? Music [1]
//snd_voipvolume 1.0; //? Voice [1]
//snd_gamevoicevolume 0.5; //? Unit Speech [1]
//dota_speech_level 1; //? Unit Speech Level: 0:Off 1:Events 2:All [2]
alias ' AUDIO - ADVANCED '
//sound_device_override 0; // Sound Device Better set the default in OS settings [0]
//speaker_config -1; // Speakers config 7:7.1, 5:5.1, 4:4.0, 2:stereo, 1:hphones, -1:def [-1]
//snd_mute_losefocus 1; // !Play Sound in Desktop Really dislike these inversed gui-cvars [1]
//chat_sound 0; // Chat Message Sound [0]
//dota_mute_cobroadcasters 0; // Mute Co-Broadcasters [0]
//closecaption 0; // Use Captions [0]
//dota_force_default_respawn_stinger 1; //? Always use default respawn music [0]
//dota_force_default_death_stinger 1; //? Always play default death music [0]
//snd_autodetect_latency 0; //? Autodetect Audio Latency [1]
alias ' AUDIO - VOICE '
//voice_vox 0; // Enable Open Mic 0:None, 1:Party, 2:Team [0]
//voice_threshold 6500; //? Open Mic Threshold ~10% 0:0%, 65535:100% i.e. disabled [4000]
//voice_always_sample_mic 0; // Streamlined Push To Talk Enable if voice hotkey gives fps loss [0]
alias ' Reference preset VIDEO - D-OPTIMIZER PRESETS: Potato Low OPTIMAL Med High Ultra'
//dota_portrait_animate 1; // Animate Portrait 0 0 0 1 1 1
//r_deferred_additive_pass 1; // Additive Light Pass 0 0 1 1 1 1
//r_deferred_simple_light 1; // World Lighting 0 1 1 1 1 1
//r_ssao 0; // Ambient Occlusion 0 0 0 0 0 1
//r_dota_normal_maps 0; // Normal Maps 0 0 1 1 1 1
//r_dota_allow_parallax_mapping 0; // Ground Parallax 0 0 0 0 1 1
//dota_ambient_creatures 0; // Ambient Creatures 0 0 0 0 1 1
//dota_ambient_cloth 1; // Ambient Cloth Simulation 0 0 0 1 1 1
//r_grass_quality 0; // Grass 0 0 1 2 3 4
//r_dota_fxaa 0; // Anti-Aliasing 0 0 0 0 1 1
//r_deferred_specular 0; // Specular 0 0 0 1 1 1
//r_deferred_specular_bloom 0; // Specular and Light Blooms 0 0 0 0 1 1
//dota_cheap_water 1; // !High Quality Water 1 1 1 1 0 0
//r_deferred_height_fog 0; // Atmospheric Fog 0 0 0 1 1 1
//r_dashboard_render_quality 0; // High Quality Dashboard 0 0 0 0 1 1
//r_dota_allow_wind_on_trees 1; // Tree Wind 0 0 1 1 1 1
//r_texture_stream_mip_bias 0; // Texture Quality 2 1 1 1 0 0
//r_texturefilteringquality 4; // Texture Filtering (not in GUI) 0 1 2 3 4 5
//cl_particle_fallback_base 0; // Effects Quality 4 4 4 2 0 0
//cl_globallight_shadow_mode 2; // Shadow Quality 0 1 2 2 2 3
//mat_viewportscale 1.0; // Render Quality 0.71 0.81 0.91 1.0 1.0 1.0
//fps_max 60.0f; // Maximum frames per second 60 60 120 120 144 240
alias ' COMPUTE SHADERS '
//r_bloom_compute 1; // Use compute shaders for bloom on Vulkan [0]
//r_dota_bloom_compute_shader 1; // Use compute shader for Bloom on DirectX [0]
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) DOTA 2 EXTRA OPTIONS (NOT IN GUI) tweaked: //? default: [] '
//--------------------------------------------------------------------------------------------------------------------------------
alias ' MISC '
//dota_hero_auto_graball 0; // 1:Automatically grab items from stash when hero return to fountain [0]
//dota_minimap_disable_rightclick 0; // 1:Disable right-click over minimap - can be annoying at first [0]
//dota_player_simplified_controls 0; // 1:R-click move, L-click attack, L-click drag to select, etc. [0]
//dota_player_smart_multiunit_cast 1; //? 1:Trigger ability for the next same unit in selection without Tab [0]
//dota_swap_mouse_spellcast 0; // 1:Trigger ability on left click instead, breaks quickcast! [0]
//dota_minimap_creep_scale 1.5; //? 1:Minimap creep scale [1]
//voice_chat_bubble_show_volume 1; // 1:Show voice volume on chat bubles, 0 breaks the bubles! [1]
//voice_local_icon 0; // 1:Show icon while you speak in local bot match [0]
//cl_voice_transmit_lobby 0; // 1:Transmit voice while in lobby? [0]
//dota_speech_emotes 0; //? 1:Enable speech emotes [1]
//hud_fastswitch 1; //? 1:Nothing atm (still) [0]
//r_dota_disable_portrait_world_renderer 1; //? 1:Disable 3d models+particles in menu - RIP [0]
//map_enable_background_maps 1; //? 0:Disable all scenes in the menu - impractical compared with above [1]
//engine_experimental_drop_frame_ticks 1; //? 1:Skip frame ticks when the client is catching up in low fps - NEW! [1]
//dota_experimental_stats_interval 120; //? Seconds between each experimental stat update. [60]
//cl_playerspraydisable 1; //? 1:Disable player sprays [0]
//ai_expression_optimization 1; //? 1:Disable npc background expressions when you can't see them. [0]
alias ' MAIN NETWORK SETUP '
//cl_updaterate 30; //? low:15, high:30, max=sv_maxupdaterate=60, min=sv_minupdaterate=10 [20]
//cl_cmdrate 30; //? low:15, high:30, max=sv_maxcmdrate=40, min=10 [30]
//cl_spectator_cmdrate_factor 0.25; //? Rate multiplier when connected via hltv reduced for high rates [0.5]
//cl_interp_ratio 1; //? min=sv_client_min_interp_ratio=1, max=sv_client_max_interp_ratio=5 [2]
//cl_spectator_interp_ratio 4; //? When connected to hltv or playing a demo, adjust interp time by [2]
//cl_interp 0; //? cl_interp_ratio/cl_updaterate; for 60 upd is 0.016667; 0=auto [0.05]
alias ' ADVANCED NETWORK OPTIONS '
//rate 160000; // min=sv_minrate=5000 won't actually consume that much [80000]
//net_maxcleartime 1.0; //? chocke fix: 0.01 [4.0]
////net_splitrate 1; // chocke fix: 2 - removed from engine atm [1]
//net_maxroutable 1200; // max=sv_maxroutable max packet size before splitting [1200]
//net_usesocketsforloopback 0; //? Use network sockets layer even for listen server local player [0]
//host_limitlocal 1; //? Apply cl_cmdrate and cl_updaterate to loopback connection [0]
//cl_downloadfilter none; //? does nothing? [all]
//cl_pred_optimize 2; // if didn't receive a network update(1), also for not repredicting(2) [2]
//cl_lagcompensation 1; // Perform server side lag compensation of weapon firing events. [1]
//cl_lagcomp_errorcheck 0; //? Player index of other player to check for position errors. [0]
//cl_smooth 0; //? Smooth view/eye origin after prediction errors [0]
//cl_smoothtime 0.1; // Smooth client's view after prediction error over this many secs [0.1]
//cl_interp_threadmodeticks 0; // Additional interpolation ticks to use with threaded engine mode set [0]
//net_p2p_listen_dedicated 0; //? Should dedicated server listen for new-style P2P? [0]
alias ' OTHER PERFORMANCE / DEBUG TWEAKS '
//snd_mixahead 0.05; //? Sound engine buffer - fix crackling: 0.2 / 0.1 (slight delay) [0.001]
//m_rawinput 0; // Use Raw Input for mouse - better in high pooling rate (500Hz+) [0]
//m_mousespeed 0; //? Windows mouse speed acceleration 0=disable 1=enable [1]
//engine_no_focus_sleep 0; //? Power savings while alt-tab 50=more, 0=none (for streaming) [20]
//r_experimental_lag_limiter 1; // 1:VSync w less inputlag if can maintain fps (dev.dota2 t=184108) [0]
//r_frame_sync_enable 0; //? 0:Disable frame sync for broken/potato systems (dev.dota2 t=174732) [1]
//voice_chat_bubbles 1; // Show voice bubbles - Random polygon lines when voice (fixed in 7.0) [1]
//dota_show_itempickups 0; // Show Item pickups - If multiple instances lowers fps, set to 0 [1]
//@panorama_show_fps 0; // Show FPS in main menu, too - or use cl_showfps 4 instead [0]
//dota_chat_disable_refresh_user_list 1; //? Who cares about spam bots in dota channels.. [0]
//dota_endgame_cinematic_disable 1; //? Would have been good if it still worked [0]
//dota_local_event_enable 1; //? Debug [0]
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) DOTA 2 VIDEO TWEAKS Can be toggled with the short console command: VT '
//--------------------------------------------------------------------------------------------------------------------------------
alias VT "VT2";alias is0 "log_flags InputService +DoNotEcho | grep %";alias is1 "log_flags InputService +DoNotEcho | grep %"//spew
alias v0a "allow_clientside_entities 1;dota_allow_clientside_entities 1;dota_allow_clientside_particles 1";
alias v1a "allow_clientside_entities 1;dota_allow_clientside_entities 1;dota_allow_clientside_particles 1"; // world fires
alias v0b "cl_particle_fallback_base 0;cl_particle_fallback_multiplier 0;cl_particle_sim_fallback_threshold_ms 6";
alias v1b "cl_particle_fallback_base 4;cl_particle_fallback_multiplier 1;cl_particle_sim_fallback_threshold_ms 1"; // effects
alias v0c "cl_particle_sim_fallback_base_multiplier 5;cl_retire_low_priority_lights 0;r_PhysPropStaticLighting 0;";
alias v1c "cl_particle_sim_fallback_base_multiplier 50;cl_retire_low_priority_lights 1;r_PhysPropStaticLighting 1"; // lights
alias v0d "@panorama_experimental_fast_box_shadow 1;cl_show_splashes 1;dota_screen_shake 1;dota_hud_reduced_flash 0"; // flash
alias v1d "@panorama_experimental_fast_box_shadow 0;cl_show_splashes 0;dota_screen_shake 0;dota_hud_reduced_flash 0";//1=razor bug
alias v0e "mat_colcorrection_disableentities 0;cl_ragdoll_limit 20;enable_boneflex 1;flex_smooth 1";
alias v1e "mat_colcorrection_disableentities 0;cl_ragdoll_limit 10;enable_boneflex 0;flex_smooth 0"; // ragdoll
alias v0f "rope_collide 1;rope_subdiv 2;rope_smooth 1;rope_averagelight 1;rope_rendersolid 1;r_ropetranslucent 1";
alias v1f "rope_collide 0;rope_subdiv 1;rope_smooth 0;rope_averagelight 0;rope_rendersolid 0;r_ropetranslucent 0"; // ropes
alias v0g "dota_hud_disable_damage_numbers 0;dota_hud_healthbar_disable_status_display 0";// stunbars forced enabled atm
alias v1g "dota_hud_disable_damage_numbers 1;dota_hud_healthbar_disable_status_display 0";// dota_use_animated_inventory_icons=rip
alias v0h "r_dota_enabled_3d_skybox_postprocess 1;r_dota_render_2d_skybox 1;r_dota_render_3d_skybox 1;r_draw3dskybox 1"; // VT2
alias v1h "r_dota_enabled_3d_skybox_postprocess 0;r_dota_render_2d_skybox 0;r_dota_render_3d_skybox 0;r_draw3dskybox 0"; // 3d sky
alias v0i "cloth_update 1;cloth_step 1;cloth_simulate 1;r_draw_selected_ring 1;dota_disable_unit_ring 0"; // VT2
alias v1i "cloth_update 0;cloth_step 0;cloth_simulate 0;r_draw_selected_ring 1;dota_disable_unit_ring 1"; // physics: Blood Chaser
//alias - 7.07 status resistance messing with disable durations makes stun bars way too necessary so presets no longer disables it
//alias - 7.07 also broke Razor whip particles under reduced flash mode, so presets no longer enables the mode (fixed in No-Bling)
//alias - 7.20 allow clientside entities needed to show Rubick Arcana and other introduction scenes
alias VT0 "is0;v0a;v0b;v0c;v0d;v0e;v0f;v0g;v0h;v0i;r_textures_evict_all;is1;alias VT VT1;echoln [VTweaks]=0 Enter VT to switch.."
alias VT1 "is0;v1a;v1b;v1c;v1d;v1e;v1f;v1g;v0h;v0i;r_textures_evict_all;is1;alias VT VT2;echoln [VTweaks]=1 Enter VT to switch.."
alias VT2 "is0;v1a;v1b;v1c;v1d;v1e;v1f;v1g;v1h;v1i;r_textures_evict_all;is1;alias VT VT0;echoln [VTweaks]=2 Enter VT to switch.."
//VT1;// replace with VT0 to use default; VT1 to keep sky, cloth physics, select circle; remove or //comment to not apply at start
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) SHORT COMMANDS (LOCAL ONLY) These do not work in a matchmaking game '
//--------------------------------------------------------------------------------------------------------------------------------
alias RR "echoln [RR: RELOAD CFG FROM DISK] ;exec autoexec"
alias QQ "echoln [QQ: QUIT] ;quit"; // Whoever thaught that q-Tab = +query is a good idea...
alias VT "VT1"; // initiate VIDEO TWEAKS toggle alias
alias gg1 "echoln [GG: START EMPTY TEST GAME];sv_cheats 1;sv_lan 0;sv_alternateticks 1;sv_stats 0;tv_enable 0;host_limitlocal 1"
alias GG "gg1; dota_creeps_no_spawning 1;dota_bot_practice_start 0;dota_easybuy 1;hideconsole;map dota;sv_cheats 1"
alias ff1 "echoln [FF: DISCONNECT/STOP] ;#stop;stopdemos;dota_bot_practice_start 0;dota_easybuy 0;sv_alternateticks 0;sv_cheats 1"
alias FF "ff1; sv_cheats 0;cl_showfps 0;hideconsole;disconnect"
alias BB "echoln [BB: SPAWN CREEPS TOGGLE]; incrementvar dota_creeps_no_spawning 0 1 1"
alias HH "echoln [HH: HERO AND SPAWNS REFRESH] ;dota_dev hero_refresh;dota_spawn_neutrals;hideconsole"
alias UU "echoln [UU: LEVELUP X5] ;dota_dev hero_level 5;dota_bot_give_level 5;hideconsole"
alias ZZ "echoln [ZZ: ADD FRIENDLY AXE];dota_create_unit npc_dota_hero_axe;hideconsole"
alias XX "echoln [XX: ADD ENEMY AXE];dota_create_unit npc_dota_hero_axe enemy;hideconsole"
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) SPECIAL HOTKEYS Free existing GUI hotkeys manually to enable '
//--------------------------------------------------------------------------------------------------------------------------------
// [SCROLLLOCK] Window Lock + Edge Pan toggle with Useful for borderless window / multi-monitor setup
bind SCROLLLOCK "echoln dota_mouse_window_lock dota_camera_edgemove | toggle"
// [KP_DIVIDE] Video Shadow I always camera follow roam, with shadows on :D
bind KP_DIVIDE "incrementvar cl_globallight_shadow_mode 0 2 2 | grep ."// Shadow Quality: high - off
// [KP_MULTIPLY] Dump active particles list Dota console grep with regex!
bind KP_MULTIPLY "dumpparticlelist | grep [^0\s][\d]*,[\s]flags;echoln To export, enter: condump;showconsole"
// [KP_PLUS] / [KP_MINUS] Master / Music Volume
bind KP_PLUS "incrementvar volume 0 1 -0.25 | grep ."// Master Volume: 100% 75% 50% 25% 0%
bind KP_MINUS "incrementvar snd_musicvolume 0 1 -0.25 | grep ."// Music Volume: 100% 75% 50% 25% 0%
// [G] / [U] Open Mic Voice Chat TEAM / PARTY toggle - was broken in 7.17 for a couple weeks
bind G "incrementvar voice_vox 0 2 2 | grep %" // Team
bind U "incrementvar voice_vox 0 1 1 | grep %" // Party
// [G] / [U] Hands-Free Voice Chat TEAM / PARTY toggle - Yet another ingenious alternative brought to you by AveYo
//bind G "toggle cl_voiceenabled | +voicerecord" // Team
//bind U "echoln cl_voiceenabled voice_vox | toggle" // Party
// Camera Zoom with [-] and [+] instead of default MWHEELUP / MWHEELDOWN since those are re-assigned for better tasks by this cfg
//bind = "camerazoomin"// Or set to [ALT]+[MWHEELUP] in GUI
//bind - "camerazoomout"// Or set to [ALT]+[MWHEELDOWN] in GUI
//--------------------------------------------------------------------------------------------------------------------------------
// INNOVATIVE CAMERA CONTROLS BY AVEYO - FINAL CONCEPT in spite of lame one cmd per key rule..
//--------------------------------------------------------------------------------------------------------------------------------
// [SPACE] : HOLD TO FOLLOW ANY single-click also stops UnBound Follow Any
bind SPACE "+dota_control_group 1337"// double-click also stops Bound Follow Hero
// [INS] or [CAPSLOCK] : UNBOUND FOLLOW ANY remains active on key release as if double-clicking portrait
bind INS "toggle dota_camera_center | +dota_control_group 1337"// gets interrupted by edge panning!
bind CAPSLOCK "toggle dota_camera_center | +dota_control_group 1337"// can be offset by camera gripping
// [DEL] or [CTRL] : STOP UNBOUND FOLLOW ANY
bind CTRL "-dota_control_group 1337"//
bind RCTRL "-dota_control_group 1337"//
bind DEL "-dota_control_group 1337"
// [HOME] or [MOUSE5] : BOUND FOLLOW HERO ONLY remains active on key release as if holding Select Hero key
bind MOUSE5 "toggle | +dota_camera_follow"// does not get interrupted by edge panning!
bind HOME "toggle | +dota_camera_follow"// can be offset by camera gripping
// [END] or [MOUSE4] : OFFSET FOLLOW UNDO (IF CAMERA GRIP CHANGED IT) applies instantly, even if not currently following
bind MOUSE4 "toggle | +cameragrip +dota_camera_center_on_hero"//
bind END "toggle | +cameragrip +dota_camera_center_on_hero"//
// [PGUP] : LARGE BOUND FOLLOW RANGE - INCREMENTAL edge pan further away while bound following hero
bind PGUP "incrementvar dota_camera_smart_follow_edge_distance 1500 4500 1000 | grep ."// adjusted range written to console
// [PGDN] : RESET BOUND FOLLOW RANGE edge pan closer (def) while bound following hero
bind PGDN "dota_camera_smart_follow_edge_distance 500 | grep reset"// reset range written to console
//// WHAT? Press Home. Move mouse around the screen edges (or use arrow keys). Press PGUP. Move. PGUP. Move. PGDN. You'll get it..
// [MWHEELUP] : SELECT HERO AND FREE CAMERA roll up once centers camera on main hero
bind MWHEELUP "+dota_camera_follow"// stops camera follow
// [MWHEELDOWN] : SELECT ALL OTHERS roll down twice centers camera on portrait
bind MWHEELDOWN "dota_select_all_others"// does not stop camera follow (roll up before)
// SUPPORTING OPTIONS FOR THE ABOVE FUNCTIONS default: []
dota_mouse_window_lock 1// Set initial state for Window lock - should be paired with Edge Pan [1]
dota_camera_edgemove 1// Set initial state for Edge Pan - should be paired with Window Lock [1]
dota_camera_follow_doublepress_time 1000001// Allow single-click Camera Center if selection is unchanged [0.5]
dota_camera_hold_select_to_follow 1// Enable Sticky Follow Hero - camera grip will not stop follow [1]
dota_camera_lock_view_helper 1// Enable Follow Offset with camera grip [1]
dota_camera_smooth_enable 1// Disable camera smooth (gains speed) [1]
dota_camera_smart_follow_offset_time 1// Camera follow time (experimental: 9999) [1]
dota_camera_smart_follow_edge_distance 500// Camera follow distance (experimental: 6000 or 12000) [500]
dota_camera_smart_follow_drag_distance 500// Camera follow drag (experimental: 6000 or 12000) [500]
//alias - About experimental: https://dev.dota2.com/showthread.php?t=276971
//--------------------------------------------------------------------------------------------------------------------------------
alias ' AVEYO`S D-OPTIMIZER (cc) DOTA 2 CONSOLE SPEW FILTER still written to console.log '
//--------------------------------------------------------------------------------------------------------------------------------
log_flags "Entity Load Unserialize" "Networking Reliable" "AnimationSystem: IK" SteamUnifiedMessages NetworkServerService +donotecho
log_flags NetworkClientService EngineServiceManager EngineInitialization SoundSystemLowLevel SoundOperatorSystem modellib +donotecho
log_flags PostProcessPipeline ToolGameSimulation RenderPipelineDota SoundOpGameSystem SchemaSystemUtils NetworkP2PService +donotecho
log_flags "Combat Analyzer" SndEmitterSystem RenderPipelineVr HostStateManager DeveloperVerbose DeveloperConsole GCClient +donotecho
log_flags DOTAHLTVDirector SteamNetSockets GameEventSystem DownloadManager CustomGameCache AnimationSystem WeekendTourney +donotecho
log_flags "Entity System" VScriptScripts ResourceSystem PostProcessing PanoramaScript NetworkService MaterialSystem VProf +donotecho
log_flags DOTAHLTVCamera CustomNetTable ClientMessages AnimationGraph "Entity Dump" "BitBuf Error" WorldRenderer CustomUI +donotecho
log_flags VolumetricFog VguiCallQueue SaveRestoreIO RenderService ModelCombiner InstantReplay "HLTV Server" Server Client +donotecho
log_flags stringtables UserMessages SndOperators SchemaSystem SceneSystem RenderSystem ParticlesLib NetSteamConn Workshop +donotecho
log_flags InputService HangWatchdog AnimResource TypeManager ToneMapping SplitScreen SplitPacket SoundSystem Assert Panel +donotecho
log_flags SignonState SaveRestore InputSystem GlobalState CommandLine VScriptDbg SpawnGroup ScenePrint Networking LOADING +donotecho
log_flags MeshSystem Filesystem ServerLog Particles EmitSound DotaGuide Developer DOTA_CHAT BoneSetup Panorama Console VR +donotecho
log_flags VScript Physics NavMesh General Decals Steam Host Demo Vfx IME +donotecho // All channels muted
// Cherry-pick channels to un-mute from above
log_flags Client Networking NetSteamConn NetworkClientService NetworkService NetworkP2PService "Networking Reliable" -donotecho
log_flags Demo Developer DeveloperConsole DeveloperVerbose VScript VScriptDbg VScriptScripts PanoramaScript Panorama -donotecho
log_flags General InputService Console Particles -donotecho // primary console output
// Some errors are spewed in the General channel, can only be silenced by setting it's verbosity to essential (losing user output)
log_verbosity Panorama Console essential; // stop DispatchAsyncEvent ..
//--------------------------------------------------------------------------------------------------------------------------------
alias ' '; con_enable 1; log_verbosity General Console InputService default | grep %; // Resume console spew
//--------------------------------------------------------------------------------------------------------------------------------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment