• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 03:04
CEST 09:04
KST 16:04
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Serral wins EWC 202543Tournament Spotlight: FEL Cracow 202510Power Rank - Esports World Cup 202580RSL Season 1 - Final Week9[ASL19] Finals Recap: Standing Tall15
Community News
Weekly Cups (Jul 28-Aug 3): herO doubles up5LiuLi Cup - August 2025 Tournaments3[BSL 2025] H2 - Team Wars, Weeklies & SB Ladder10EWC 2025 - Replay Pack4Google Play ASL (Season 20) Announced58
StarCraft 2
General
Clem Interview: "PvT is a bit insane right now" Serral wins EWC 2025 TL Team Map Contest #5: Presented by Monster Energy Would you prefer the game to be balanced around top-tier pro level or average pro level? Weekly Cups (Jul 28-Aug 3): herO doubles up
Tourneys
WardiTV Mondays $5,000 WardiTV Summer Championship 2025 Sparkling Tuna Cup - Weekly Open Tournament LiuLi Cup - August 2025 Tournaments Sea Duckling Open (Global, Bronze-Diamond)
Strategy
Custom Maps
External Content
Mutation # 485 Death from Below Mutation # 484 Magnetic Pull Mutation #239 Bad Weather Mutation # 483 Kill Bot Wars
Brood War
General
BW General Discussion How do the new Battle.net ranks translate? Which top zerg/toss will fail in qualifiers? Google Play ASL (Season 20) Announced Nobody gona talk about this year crazy qualifiers?
Tourneys
[Megathread] Daily Proleagues [ASL20] Online Qualifiers Day 2 Cosmonarchy Pro Showmatches [ASL20] Online Qualifiers Day 1
Strategy
Simple Questions, Simple Answers [G] Mineral Boosting Muta micro map competition Does 1 second matter in StarCraft?
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread Total Annihilation Server - TAForever Beyond All Reason [MMORPG] Tree of Savior (Successor of Ragnarok)
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
Things Aren’t Peaceful in Palestine US Politics Mega-thread European Politico-economics QA Mega-thread Bitcoin discussion thread 9/11 Anniversary
Fan Clubs
INnoVation Fan Club SKT1 Classic Fan Club!
Media & Entertainment
Movie Discussion! [Manga] One Piece Anime Discussion Thread [\m/] Heavy Metal Thread Korean Music Discussion
Sports
2024 - 2025 Football Thread Formula 1 Discussion TeamLiquid Health and Fitness Initiative For 2023
World Cup 2022
Tech Support
Gtx660 graphics card replacement Installation of Windows 10 suck at "just a moment" Computer Build, Upgrade & Buying Resource Thread
TL Community
TeamLiquid Team Shirt On Sale The Automated Ban List
Blogs
[Girl blog} My fema…
artosisisthebest
Sharpening the Filtration…
frozenclaw
ASL S20 English Commentary…
namkraft
The Link Between Fitness and…
TrAiDoS
momentary artworks from des…
tankgirl
from making sc maps to makin…
Husyelt
Customize Sidebar...

Website Feedback

Closed Threads



Active: 679 users

Customising Dota 2

Forum Index > The Tavern
Post a Reply
1 2 3 4 5 15 16 17 Next All
tauon
Profile Blog Joined January 2012
Australia1278 Posts
Last Edited: 2014-05-13 15:44:49
May 15 2012 08:37 GMT
#1
Guide to the Console and Config Files

Version 1.9

by tauon

[image loading] "So begins a new age of knowledge"

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/0/09/Invo_begin_01.mp3


Hello TLers! After looking around, I realised there were no threads on teamliquid about using config files to customise Dota 2. After a long time lurking I figured this would make a good first post.

Dota 2 is built on the source engine which Valve have deliberately made fun to mess around with. Before I go into any details, here are some examples of the things you can change:
  • Can deny creeps by just right clicking them (no attack move required)
  • Add range finder to spells
  • Add hotkeys to automate shop purchases
Most of these options can't be accessed though the game client and must be changed using the game's config files or through the console.

Feel free to post any questions/bugs you have in this thread. I'll do my best to answer them!


0. Table of Contents

I Introduction
II Launch Options
III Useful Commands
IV Macros
V Smart Casting
VI Internet Connection
VII Performance
VIII Editing Recommended Items
IX Custom Cursors
X References
XIa Autoexec.cfg
XIb Kael.cfg
XII Changelog



[image loading] "No sorcery lies beyond my grasp."

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/8/81/Rubick_move_21.mp3


I. Introduction

To create a console script that is executed at the start up of dota 2, you need to create a .txt file and rename it to autoexec.cfg. You then need to place this file in the folder C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota\cfg\.

Each line in this file will be a command. Note that anything after a `//' in a particular line will not be read by the Source Engine (it is said to have been `commented out'). These commands can also be used with the console.

This cfg file can be edited using any text editor such as notepad. (becareful you don't create a file called autoexec.cfg.txt )

If at anytime you want to undo these changes, simply delete the autoexec.cfg file.


[image loading] "Hey, I was thinking. Uh oh. "

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/2/2c/Ogmag_level_05.mp3

II. Launch Options

You can adde custom launch options to Dota 2 by going to your steam library, right clicking Dota 2 and click properties. From here, click the Set Launch Options button which can be found in the General tab. In the text box type all the launch options you want seperated by spaces but preceded by dashes (eg. -novid -console -high).

Command: -console
Description: Enables the console. Can also be activated by using the console command con_enable "1" in your autoexec.cfg file.


Command: -novid
Description: Disables the intro video played every time you start dota


Command: -noforcemaccel -noforcemspd -useforcedmparms
Description: Disable mouse acceleration


Command: -noforcemaccel -noforcemspd -useforcedmparms
Description: Disables mouse acceleration


Command: -high
Description: Automatically assigns dota a high CPU priority. Useful if other processes are running in the background.


Command: -windowed -w # -h # -noborder
Description: Starts Dota in a borderless window with the specified resolution. Replace the # with your desired height and width.


[image loading] "That was genius!"

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/f/f0/Tink_kill_03.mp3

III. Useful Commands

Command: dota_force_right_click_attack
Description: Can now right-click to deny creeps
Example: dota_force_right_click_attack "1"
Default: "0", right click deny is disabled
Comments: The trade-off with this command is that it will no longer be possible to right click an ally to follow and instead will have to m-click them. This might be good for former HoN players.


Command: dota_disable_range_finder
Description: When spell is selected, a range finder is shown
Example: dota_disable_range_finder "0"
Default: "1", range finder is disabled


Command: dota_screen_shake
Description: Stops the screen shaking when certain spells are cast
Example: dota_screen_shake "0"
Default: "1", screen shakes when certain spells are cast


Command: dota_player_multipler_orders
Description: Allows all units controlled by a player to be used by ctrl clicking
Example: dota_player_multipler_orders "1"
Default: "0", disabled


Command: dota_set_avatar
Description: Controls what avatar you will appear as in the lobby
Example: dota_set_avatar "4"
Default: "0"
Notes: This command no longer works
+ Show Spoiler +
0 - Creep
[image loading]
1 - Crystal Maiden
[image loading]
2 - Kunka
[image loading]
3 - Faceless void
[image loading]
4 - Furion
[image loading]
5 - Juggernaut
[image loading]
6 - Bloodseeker
[image loading]
7 - Lich
[image loading]
8 - Axe
[image loading]
9 - Pudge
[image loading]
10 - Puck
[image loading]



Command: chat_join
Description: Automatically joins a chat channel at start up
Example: chat_join "teamliquid"


Command: dota_player_add_summoned_to_selection
Description: Summons are automatically added to your current control group when spawned
Example: dota_player_add_summoned_to_selection "1"


Command: dota_minimap_hero_size
Description: sets the size of the heroes on the minimap
Example: dota_minimap_hero_size "700"
Default: "600"


Command: dota_unit_fly_bonus_height
Description: Sets height of flying units
Example: dota_unit_fly_bonus_height "10"
Default: "150"


Command: hud_sticky_item_name
Description: Change the item (tp scroll by default) placed in the sticky section of the quickbuy panel.
Example: hud_sticky_item_name "item_tpscroll"
Notes: List of item codes shown in the section `Editing Item Recommendations'.

Command: dota_always_show_player_names
Description: Shows the players name above hero
Example: dota_always_show_player_names "1"
Default: "0", off


Command: dota_sf_game_end_delay
Description: Sets delay at end of game before score screen appears
Example: dota_sf_game_end_delay "0"
Default: Set at around "5", not sure


Command: dota_minimap_simple_colors
Description: makes minimap colour scheme similar to Dota 1
Example: dota_minimap_simple_colors "1"
Default: "0", off by default


Command: dota_shop_force_hotkeys
Description: hotkeys up the shop. ie qwerty to choose a tab and 123... to choose an item.
Example: dota_shop_force_hotkeys 1
Default: "0", off by default


Command: bind, say_team
Description: Together, these commands allow you to bind chat commands to hotkeys
Example: bind "p" "say_team miss top"


Command: dota_gamescon_althack
Description: Let's you use ALT+QWEASD to use items from your inventory.
Example: dota_gamescon_althack "1"


Command: tv_nochat
Description: Can switch spectator chat on and off when spectating a game
Example: tv_nochat "1"


Command: dota_minimap_misclick_time
Description: Can create a delay between clicking the minimap and a command being issued. Useful to avoid misclicks but I find this a nuisance and disable it.
Example: dota_minimap_misclick_time "0"


Command: dota_apm
Description: If you type this into the console during a game or at the final score screne (not in the autoexec file), you can view your average APM.
Example: dota_apm


Command: dota_minimap_ping_duration
Command: dota_minimap_ping_tag_duration
Description: Controls the duration of pings and defend pings on the minimap.
Example: dota_minimap_pind_duration "1"


Command:
Description: (I added this because it took me a while to notice) If you open the console at the end of a game, it will automatically display a lot of useful stats about the game. Examples include total damage dealt, total stun duration, total distance travelled for each player.

Command: dota_sf_old_heropedia "1"
Description: Switches back to using the old learn tab, not the web based one, example screenshot.
Note: Only works if the command is executed before the game loads. So it must be placed in your autoexec file or some other config file which loads upon initialisation.

Command: dota_recent_event
Description: Jumps to location of most recent ping. Best to bind this to an actual key.
Example: bind "0" "dota_recent_event"

Command: dota_camera_accelerate
Description: Sets the camera acceleration.
Example: dota_camera_accelerate "49"


[image loading] "I've got some new recipes to try out."

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/2/27/Alch_respawn_04.mp3

IV. Macros

Rather then go into a detailed discussion about macros I thought I'd list some useful macros I have come across:

Printing Text on the Screen
This isn't really a macro but it will allow you to print text onto the top right of the screen in dota 2.

The first thing to do is to enable developer mode with the command: developer 1. The problem with this is it will also print a lot of other stuff onto the screen. To also add the command" con_filter enable "1" and then add a filter with con_filter_text "!!!". To print something onto the screen you can now use the command echo !!!puttexthere. Now the only text printed that is printed onto the screen is prefaced with `!!!'

Related commands are:

contimes "8"
Controls the number of lines on the screen at any one time.

con_notifytime "3"
Amount of time each line spends on the screen.

Range Finder
Creates a ring of radius 1025 around your hero when the `]' is pressed. This can be useful for smoke ganks or dodging Pudge's hooks
alias "+range" "dota_range_display 1025"
alias "-range" "dota_range_display 0"
bind "]" "+range"


Ping
Places the current ping on the top bar. This can be toggled on and off using F10. You may have to play with the numbers "418", and "-80" to work with your resolution, perhaps try 436 and -68.
net_graphinsetbottom "418" // 100 to place below scoreboard
net_graphinsetright "-80" // 600 to place below scoreboard
net_graphproportionalfont "0" // Resize font
net_graph "1"
alias "showgraph" "showgraph_off"
alias "showgraph_on" "net_graph 1; alias showgraph showgraph_off"
alias "showgraph_off" "net_graph 0; alias showgraph showgraph_on"
bind "F10" "showgraph"


Invoker Script
This can be done for any hero, but works particularly well on heroes like Invoker. This macro allows you invoke a spell with a single hotkey. The best way to do this is to create a seperate config file and place it in C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota\cfg\. In this example, I'll call it kael.cfg. You then add the line:
bind "F7" "exec kael.cfg"

This will load the config files settings when you press F7 in game. Inside this file you can add lines like:
bind "`" "dota_ability_execute 0;dota_ability_execute 0;dota_ability_execute 1;dota_ability_execute 5;dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 1"

This line will bind the Ghost Walk spell to the `/~ key and will also summon three instances of Wex creating a sort of invoker `panic button'. In practice, the same thing can be done for all of invokers spells. If you assign all the different spells to hotkeys, you can also reassign the Quas, Wex, Exort hot-keys to summon three instances instead of one with:
bind "q" "dota_ability_execute 0;dota_ability_execute 0;dota_ability_execute 0"

Keep in mind pressing F7 and executing the kael.cfg file will override any overlapping hot-keys. Typing exec autoexec.cfg should restore your old hotkeys. I've included my config file at the end of this thread.

Shadow Fiend Script
This script can be used for any hero but this script allows you to use the 'z' key to toggle a range finder between three range finders corresponding to the range of each of Shadow Fiends Raises. Simply copy this code into your autoexec.cfg file.

alias "sfrange" "sfrangeQ"
alias "sfrangeQ" "dota_range_display 200;alias sfrange sfrangeW"
alias "sfrangeW" "dota_range_display 450;alias sfrange sfrangeE"
alias "sfrangeE" "dota_range_display 700;alias sfrange sfrange0"
alias "sfrange0" "dota_range_display 0;alias sfrange sfrangeQ"
alias "z" "sfrange"



Key Modifiers
This simple macro allows you to assign multiple commands to a single key. Ie, Q casts the first spell and space+Q uses the item in your first inventory slot.

alias "+custom_mod" "bind q dota_item_execute 0; bind w dota_item_execute 1;bind e dota_item_execute 2;bind r dota_item_execute 3"
"
alias "-custom_mod" "bind q dota_ability_execute 0; bind w dota_ability_execute 1;bind e dota_ability_execute 2;bind r dota_ability_execute 3"

bind "space" "+custom_mod"



Hold Position Behaviour
This was copied directly from: http://dl.dropbox.com/u/51553868/autoexec.cfg
I haven't had an opportunity yet to test it out.

bind "a" "dota_player_units_auto_attack 0;mc_attack" //Attack clicks leave passive stance
bind "s" "dota_player_units_auto_attack 1;dota_stop" //Stop leaves aggressive stance
bind "c" "dota_player_units_auto_attack 0;dota_hold" //Hold leaves passive stance
bind "x" "mc_move" //Move click


[image loading] "Imbalance demands it!"

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/9/9d/Lesh_attack_09.mp3

V Smart Casting
Smart casting allows you to aim and cast a spell with a single click. For example, Vengeful Spirit can cast magic missile by mousing over a hero (or creep lol) and simply pressing Q. No clicking required. Players migrating from LoL may be used to and prefer smart casting.

The basic command used to enable smart casting is:
alias "leftclick" "+sixense_left_click; -sixense_left_click"
This command causes the mouse to execute a left click at what ever point it is at.

Hence smartcasting can be activated on an ability using:
alias "+sCastAbil_Q" "dota_ability_execute 0"
alias "-sCastAbil_Q" "leftclick"
bind "q" "+sCastAbil_Q"


and similarly for items:
alias "+sCastItem_0" "dota_item_execute 0"
alias "-sCastItem_0" "leftclick"
bind "T" "+sCastAbil_0"


You can do this for each spell or just copy the code from http://dev.dota2.com/showthread.php?t=5570 or http://dev.dota2.com/showthread.php?t=30888

You can toggle smart casting on and off for an ability (or item) using:
alias "sCast" "sCastOn"
alias "sCastOn" "alias -sCastAbil_Q click; alias sCast sCastOff"
alias "sCastOff" "alias -sCastAbil_Q; alias sCast sCastOn"

alias "+sCast" "sCastOn"
alias "-sCast" "sCastOff"

bind "space" "sCast"


[image loading] "Did my head just get pointier?"

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/e/e6/Dkseer_level_07.mp3


VI Internet Connection

For those located outside North America, lag can be a bit of a problem. I found the following block of code helped fix the problem for me. If these settings lag for you, try the values shown in brackets that are better suited for slower internet speeds.

rate "80000"       // Total amount of bandwidth Dota 2 may use (40000)
cl_updaterate "40" // Amount of updates recieved from server per second (20)
cl_cmdrate "40" // Amount of updates sent to server per second (20)
cl_interp "0"
cl_interp_ratio "1"
cl_smoothtime "0.01" // When errors occur smooth display over X time



VII Performance

I like to use the following commands:
fps_max "60" // Halves the default fps
mat_vsync "1" // Stops screen refresh rate exceeding refresh rate of monitor
mat_triplebuffered "1" // Enable with vsync if fps is less than 60 (0 Disables, 1 Enables)


For people with lower spec computers or who prefer lower graphics settings (like me), try the following code to increase performance:
dota_cheap_water 1
cl_globallight_shadow_mode 0
r_deferred_height_fog 0
r_deferred_simple_light 1
r_screenspace_aa 0
mat_vsync 0 // Need to delete mat_vsync "1" line


The following list of commands will use (approximately) the lowest available settings for Dota 2

+ Show Spoiler +

lower_body "0"
r_shadow_half_update_rate "1"
r_rainparticledensity "0"
cl_particle_fallback_base "4"
cl_particle_fallback_multiplier "0"
r_flashlightdepthtexture "0"
r_shadowrendertotexture "0"
r_shadowfromworldlights "0"
cl_detaildist "400"
cl_detailfade "150"
r_drawmodeldecals "0"
r_decalstaticprops "0"
cl_ragdoll_maxcount "4"
ragdoll_sleepaftertime "3"
cl_phys_maxticks "3"
r_worldlightmin "0.005"
props_break_max_pieces "2"
z_mob_simple_shadows "2"
cl_ragdoll_maxcount_gib "5"
cl_ragdoll_maxcount_generic "10"
cl_ragdoll_maxcount_special "2"
sv_ragdoll_maxcount "4"
sv_ragdoll_maxcount_gib "5"
sv_ragdoll_maxcount_generic "10"
sv_ragdoll_maxcount_special "2"
z_infected_decals "0"
cl_impacteffects_limit_general "10"
cl_impacteffects_limit_exit "3"
cl_impacteffects_limit_water "2"
cl_ragdoll_self_collision "0"
cl_player_max_decal_count "2"
cl_footstep_fx "0"
r_flashlightinfectedfov "70"
r_flashlightinfectedfar "300"
r_flashlightinfectedlinear "300"
r_worldlights "2"
r_decals "512"
r_decal_overlap_count "1"
mat_bumpmap "0"
mat_specular "0"
mat_phong "0"
mat_grain_enable "0"
mat_local_contrast_enable "0"
mat_motion_blur_enabled "0"
mat_disablehwmorph "1"
r_overlayfademin "1750"
r_overlayfademax "2000"
mp_usehwmvcds "-1"
mp_usehwmmodels "-1"
mat_depthfeather_enable "0"
mat_force_vertexfog "1"
mat_picmip "1"



[image loading] "I'll start a checklist."

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/c/ce/Gyro_spawn_04.mp3


VII Editing Recommended Items

You've probably noticed the item recommendations in the right hand side of the shop. I find some of these recommendations quite questionable (shadow blade on Drow!?) but as it turns out you can edit the default recommendations.

The recommendation files are stored the folder C:\Program Files (x86)\steam\steamapps\common\dota 2 beta\dota\cfg\itembuilds\

The files are labelled as "default_hero.txt". Editing these files is pretty straightforward. Just follow the template that's layed out for you in these files.

Some Common Item Codes:
+ Show Spoiler +
Aghanim's Scepter = item_ultimate_scepter
Assault Cuirass = item_assault
Basher = item_basher
Blade Mail = item_blade_mail
Black King Bar = item_black_king_bar
Boots of Speed = item_boots
Bottle = item_bottle
Butterfly = item_butterfly
Clarity = item_clarity
Crysalys = item_crit
Daedalus = item_greater_crit
Desolator = item_desolator
Eul's Scepter of Divinity = item_cyclone
Eye of Skadi = item_skadi
Gauntlets of Strength = item_gauntlets
Healing Salve = item_flask
Heart of Torrasque = item_heart
Helm of the Dominator = item_helm_of_the_dominator
Hood of Defiance = item_hood_of_defiance
Iron Branch = item_branches
Khadgar's Pipe = item_pipe
Linken's Sphere = item_sphere
Magic Stick = item_magic_stick
Magic Wand = item_magic_wand
Manta Style = item_manta
Mantle of Intelligence = item_mantle
Mekansm = item_mekansm
Mjollnir = item_mjollnir
Monkey King Bar = item_monkey_king_bar
Necronomicon = item_necronomicon
Null Talisman = item_null_talisman
Observer Ward = item_ward_observer
Orchid Malevolence = item_orchid
Phase Boots = item_phase_boots
Power Treads = item_power_treads
Quelling Blade = item_quelling_blade
Radiance = item_radiance
Ring of Basilius = item_ring_of_basilius
Ring of Health = item_ring_of_health
Sange = item_sange
Sange and Yasha = item_sange_and_yasha
Satanic = item_satanic
Scythe of Vyse = item_sheepstick
Shadow Blade = item_invis_sword
Shiva's Guard = item_shivas_guard
Slippers of Agility = item_slippers
Stout Shield = item_stout_shield
Tango = item_tango
Teleport Scroll = item_tpscroll
Urn of Shadows = item_urn_of_shadows
Vanguard = item_vanguard
Veil of Discord = item_veil_of_discord
Vladmir's Offering = item_vladmir
Wraith Band = item_wraith_band
Yasha = item_yasha



[image loading] "Some assembly required."

Oops, looks like your browser doesn't support the audio tag yet. You can download the file manually: http://www.dota2wiki.com/images/9/99/Ratt_spawn_02.mp3


IX Custom Cursors
This was something discussed in chat and I haven't tried it out myself but as I understand it you can change the default cursor used by Dota.

The cursors are located in C:\Program Files\Steam\SteamApps\common\dota 2 beta\dota\resource\cursor for dota cursors. These can be replaced by any valid .ani file such as those used by Windows which can be found in C:\WINDOWS\Cursors.

As I said, I haven't tried this out myself so if anyone has tried it, please pm or post it at the end of the post.

(Credit to Qbek for the method and DodgySmalls for bringing it up)

X Credits and Resources

I used the following websites heavily when compiling this post. Credit where credit is due:
http://www.killsteal-legends.net/dota-2-tweaked-config.html
http://www.dota2portal.org/t2526-some-dota2-faq

(Semi) Complete list of Dota 2 console commands:
http://www.dota2wiki.com/wiki/Console_Command_List

List of general Source Engine console commands:
https://developer.valvesoftware.com/wiki/Console_commands

Detailed guide on customising item recommendations:
http://www.dotafire.com/dota-2/guide/custom-recommended-items-63#comment-9322

One of the best console/config threads:
http://dev.dota2.com/showthread.php?t=5570

Quick guide to smartcasting:
http://dev.dota2.com/showthread.php?t=30888

For those who are still stuck, I will upload my autoexec.cfg file to my TL blog soon. It contains some extra commands people may also find useful.

XIa Autoexec.cfg

+ Show Spoiler +

// By tauon
// 15/5/12, v.1.0

// Use launch conditions: -console -novid
// -console enables console and -novid disables intro video


con_enable "1" // Enables the console

// List of channels you want to be added to by default
chat_join "teamliquid" // Join Teamliquid chat channel
chat_join "boredaussie"
chat_join "Australia"

// BASIC SETTINGS

dota_screen_shake "0" // Screen will no longer shake when certain are cast
dota_force_right_click_attack "1" // Can now right-click to deny
dota_disable_range_finder "0" // When spell is selected, range finder is shown
dota_minimap_hero_size "700" // Increases the size of heroes on the minimap
dota_player_multipler_orders "1" // Hold ctrl to give order to all units
dota_player_units_auto_attack "0" // Disables hero autoattack
dota_unit_fly_bonus_height "10" // Decreases height of flying units significantly (Default: 150)
dota_always_show_player_names "1" // Always show player names
dota_ability_quick_cast "1" // Doubletapping to selfcast
dota_sf_game_end_delay 0 // Make results appear immediately after game ends

// dota_minimap_simple_colors 1 // Makes minimap colour scheme similar to WC3/Dota 1 (to turn off, set to 0)
// dota_ability_quick_cast 1 // Double tapping item/ability applies it to yourself (to turn off, set to 0)

// Health Bar, makes hp changes instantaneous if set to 0 without quotations
// dota_health_hurt_decay_time_max "0.4" // Default is 0.8
// dota_health_hurt_decay_time_min "0.15" // Default is 0.3
// dota_health_hurt_delay "0.05" // Default is 0.1
// dota_pain_decay "0.4" // Default is 0.8
// dota_pain_factor "1.5" // Default is 3
// dota_pain_multiplier "0.4" // Default is 0.8


// dota_killcam_show 1 // Enables information updon death (Default: 0)
// dota_health_per_vertical_marker "250" // Health segmenting in the lifebar (default 250)
// dota_health_marker_major_alpha "255" // Opacity major healthbar divider (default 255, 0=invisible 255=opaque)
// dota_health_marker_minor_alpha "128" // Opacity minor healthbar divider (default 128, 0=invisible 255=opaque)
// dota_hud_healthbar_number "1" // Health number above the lifebar on (default 1)
// dota_minimap_misclick_time "0.4" // Threshold delay to accept minimap clicks (default 0.2)
// dota_camera_accelerate "10" // Decelerating map scroll (50 = insta stop, 1 = smooth slowdown, vanilla DotA would be 50)
// dota_camera_speed "3682" // Scrolling speed (vanilla DotA-like is 6500, default 3000)
// dota_camera_disable_zoom "1" // Disables mousewheel zoom (default 1)

// dota_unit_multiple_selection "1" // ???

// SOUND
// volume "0.05" // Volume adjusted for teamspeak
// snd_musicvolume "0" // Ingame music volume (Min "0" Max "1.0")


// Choose lobby avatar
// dota_set_avatar 0 //- Default
// dota_set_avatar 1 //- Crystal Maiden
// dota_set_avatar 2 //- Kunkka
// dota_set_avatar 3 //- Faceless Void
dota_set_avatar 4 //- Furion
// dota_set_avatar 5 //- Yurnero
// dota_set_avatar 6 //- Bloodseeker
// dota_set_avatar 7 //- Lich
// dota_set_avatar 8 //- Axe
// dota_set_avatar 9 //- Pudge
// dota_set_avatar 10 //- Puck

// Frame rate
fps_max "60" // Halves the default fps
mat_vsync "1" // Stops screen refresh rate exceeding refresh rate of monitor
mat_triplebuffered "1" // Enable with vsync if fps is less than 60 (0 Disables, 1 Enables)

// FOR LOW SPEC PCs
// dota_cheap_water 1
// cl_globallight_shadow_mode 0
// r_deferred_height_fog 0
// r_deferred_simple_light 1
// r_screenspace_aa 0
// mat_vsync 0 // (Need to delete mat_vsync "1" line)

// PING

net_graphinsetbottom "418" // 100 to place below scoreboard
net_graphinsetright "-80" // 600 to place below scoreboard
net_graphproportionalfont "0" // Resize font
net_graph "1"
alias "showgraph" "showgraph_off"
alias "showgraph_on" "net_graph 1; alias showgraph showgraph_off"
alias "showgraph_off" "net_graph 0; alias showgraph showgraph_on"
bind "F10" "showgraph"


// INTERNET CONNECTION

rate "80000" // Total amount of bandwidth Dota 2 may use (40000)
cl_updaterate "40" // Amount of updates recieved from server per second (20)
cl_cmdrate "40" // Amount of updates sent to server per second (20)

cl_interp "0" // cl_interp 1 / cl_updaterate * (cl_interp_ratio ) (Default 0.1)
cl_interp_ratio "1" // Multiplies final result of cl_interp (Default 2)
cl_smoothtime "0.01" // When errors occur smooth display over X time, 0 Disables (Default 0.1)

// SCRIPTS

// Shows scoreboard and APM in the console
alias "+showboard" "+showscores;dota_apm"
alias "-showboard" "-showscores;"
bind "\" "+showboard" // Show Netgraph and APM

// Shows 1025 rangeunits, the proximity range to be revealed while smoked, 1300 = lvl4 pudge hook range, 700 = tower range, 1150 = dagger range
alias "+range" "dota_range_display 1025"
alias "-range" "dota_range_display 0"
bind "]" "+range" // Show Range Radius


// BINDINGS

bind "u" "dota_learn_stats"
bind "F8" "exec autoexec.cfg" // Executes this autoexec again
bind "F11" "toggleconsole" // Open Console
dota_shop_force_hotkeys 1 // Adds hotkeys to shop (to turn off the set 0)
bind "." "toggleshoppanel" // Open Shop

// Chat Bindings
bind "p" "say_team miss top"
bind "," "say_team miss bottom"
bind "l" "say_team miss mid"
bind "k" "say_team re"
bind "n" "say_team b"
bind "m" "say_team care"

bind "F7" "exec invoker.cfg" // Executes Invoker Script

// `Useful' console commands:
// dota_apm Retrieve average APM for last game
// net_graph # # = 0, 1, 2, 3, 4
// cl_showfps check frame rate


XIb Kael.cfg

+ Show Spoiler +

// By tauon
// 13/7/12, v.1.0
// 3 Quas - q
// bind "q" "dota_ability_execute 0;dota_ability_execute 0;dota_ability_execute 0"

// 3 Wex - w
// bind "w" "dota_ability_execute 1;dota_ability_execute 1; dota_ability_execute 1"

// 3 Exort - e
// bind "e" "dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"

// Ghost Walk - `/~
bind "`" "dota_ability_execute 0;dota_ability_execute 0;dota_ability_execute 1;dota_ability_execute 5;dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 1"

// Chaos Meteor - z
bind "z" "dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 1;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"

// Deafening Blast - x
bind "x" "dota_ability_execute 0;dota_ability_execute 1;dota_ability_execute 2;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"

// Ice Wall - c
bind "c" "dota_ability_execute 0;dota_ability_execute 0;dota_ability_execute 2;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2"

// Tornado - 4
bind "4" "dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 0;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"

// EMP - 5
bind "5" "dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"

// Alacrity - 6
bind "6" "dota_ability_execute 1;dota_ability_execute 1;dota_ability_execute 2;dota_ability_execute 5;dota_ability_execute 2;dota_ability_execute 2;dota_ability_execute 2"


XII Changelog

v1.1 my autoexec.cfg is here ---> http://www.teamliquid.net/blogs/viewblog.php?id=337800
v1.2 Thanks to Unleashing and Knightess for pointing out that enabling right click deny stops right click following.
Also thanks to writer22816 for pointing out error in default value for range finder command
v1.3 blog post containing autoexec.cfg was closed so I included file in section VII instead
v1.4 Added new reference about general Source Engine command. Thanks to Westerhound for suggesting it.
v1.5 Added a section on editing default item recommendations
v1.6 Added a section on invoker scripts and also added some new commands.
v1.7 Added a lot of new content... To much to list.
v1.8 Added a new commands to use the legacy hero learn tab. Credit to Cyborgmatt for suggesting it.
v1.9 Added some new commands including one suggested by Degu.

[image loading]
Road to 6sange
Angra
Profile Blog Joined May 2009
United States2652 Posts
May 15 2012 09:03 GMT
#2
This is a really useful resource, thanks!

At the end of each command line when specifying a number, does it have to be in quotes? For example, does it have to be dota_force_right_click_attack "1", or can it be dota_force_right_click_attack 1 ?
tauon
Profile Blog Joined January 2012
Australia1278 Posts
May 15 2012 09:25 GMT
#3
On May 15 2012 18:03 Angra wrote:
This is a really useful resource, thanks!

At the end of each command line when specifying a number, does it have to be in quotes? For example, does it have to be dota_force_right_click_attack "1", or can it be dota_force_right_click_attack 1 ?

Both variations should work with that command but for commands like: bind "p" "say_team miss top", you need the quotation marks. It's probably just safer to leave them on but it's a matter of personal preference.

Thanks for reading my guide.
Road to 6sange
Tenox
Profile Joined January 2007
Sweden128 Posts
May 15 2012 09:35 GMT
#4
Excellent stuff! Will definitely be using some of these commands! Thanks!:D
Please check out my gallery at: 10ox.deviantart.com
Unleashing
Profile Joined March 2011
Denmark14978 Posts
Last Edited: 2012-05-15 09:55:41
May 15 2012 09:55 GMT
#5
You should probably note that using the right click deny makes you unable to follow allies by right clicking.
From the Ghastly Eyrie I can see to the ends of the world, and from this vantage point I declare with utter certainty that this one is in the bag!
JulsFoF
Profile Joined April 2011
49 Posts
May 15 2012 10:56 GMT
#6
thats why i love tl
someone always comes up with something usefull.

thx dude
writer22816
Profile Blog Joined September 2008
United States5775 Posts
May 15 2012 11:50 GMT
#7
Great thread!


Command: dota_disable_range_finder
Description: When spell is selected, a range finder is shown
Example: dota_disable_range_finder "0"
Default: "0", range finder is disabled


Don't you mean Default: 1, range finder is disabled?
8/4/12 never forget, never forgive.
LaiShin
Profile Joined November 2005
Australia978 Posts
May 15 2012 12:23 GMT
#8
I have created my autoexec.cfg, but I can't get it working.

+ Show Spoiler +

net_graph 1
dota_force_right_click_attack 1
dota_hud_health_bars 3
dota_health_per_vertical_marker 250
dota_minimap_hero_size 999
fps_max 101
cl_updaterate 101
cl_cmdrate 101
net_graphinsetbottom "418" // 100 to place below scoreboard
net_graphinsetright "-80" // 600 to place below scoreboard
net_graphproportionalfont "0" // Resize font
net_graph "1"
alias "showgraph" "showgraph_off"
alias "showgraph_on" "net_graph 1; alias showgraph showgraph_off"
alias "showgraph_off" "net_graph 0; alias showgraph showgraph_on"
bind "F10" "showgraph"
rate 80000


Does it matter if my steam is in D drive?
And the folders were manually created as there were no folder with that extension.
imweakless
Profile Blog Joined September 2009
757 Posts
May 15 2012 12:29 GMT
#9
thank you so much for this.. btw is their a list for console commands with appropriate description?
KMK,Qri,GsD#1, UEE,stork jangbi for life!
Elasticity
Profile Blog Joined June 2010
3420 Posts
May 15 2012 12:34 GMT
#10

Command: dota_force_right_click_attack
Description: Can now right-click to deny creeps
Example: dota_force_right_click_attack "1"
Default: "0", right click deny is disabled

About this one, it is pretty good in laning phase. But it also disable the ability to right-click to follow someone. So when you want to make your hero/a unit to follow someone, you have to press M + left click.
tauon
Profile Blog Joined January 2012
Australia1278 Posts
May 15 2012 15:02 GMT
#11
On May 15 2012 18:55 Unleashing wrote:
You should probably note that using the right click deny makes you unable to follow allies by right clicking.


On May 15 2012 21:34 Knightess wrote:
Show nested quote +

Command: dota_force_right_click_attack
Description: Can now right-click to deny creeps
Example: dota_force_right_click_attack "1"
Default: "0", right click deny is disabled

About this one, it is pretty good in laning phase. But it also disable the ability to right-click to follow someone. So when you want to make your hero/a unit to follow someone, you have to press M + left click.


Included this point in the original post.
Road to 6sange
tauon
Profile Blog Joined January 2012
Australia1278 Posts
May 15 2012 15:09 GMT
#12
On May 15 2012 20:50 writer22816 wrote:
Great thread!

Show nested quote +

Command: dota_disable_range_finder
Description: When spell is selected, a range finder is shown
Example: dota_disable_range_finder "0"
Default: "0", range finder is disabled


Don't you mean Default: 1, range finder is disabled?


fixed and acknowledged in the changelog.
Road to 6sange
tauon
Profile Blog Joined January 2012
Australia1278 Posts
Last Edited: 2012-05-16 16:07:14
May 15 2012 15:25 GMT
#13
On May 15 2012 21:29 imweakless wrote:
thank you so much for this.. btw is their a list for console commands with appropriate description?


The best list I found was http://www.dota2wiki.com/wiki/Console_Command_List. The game is still in beta so there probably won't be any proper documentaion for some time.

EDIT: Also this: https://developer.valvesoftware.com/wiki/Console_commands

On May 15 2012 21:23 LaiShin wrote:
I have created my autoexec.cfg, but I can't get it working.

+ Show Spoiler +

net_graph 1
dota_force_right_click_attack 1
dota_hud_health_bars 3
dota_health_per_vertical_marker 250
dota_minimap_hero_size 999
fps_max 101
cl_updaterate 101
cl_cmdrate 101
net_graphinsetbottom "418" // 100 to place below scoreboard
net_graphinsetright "-80" // 600 to place below scoreboard
net_graphproportionalfont "0" // Resize font
net_graph "1"
alias "showgraph" "showgraph_off"
alias "showgraph_on" "net_graph 1; alias showgraph showgraph_off"
alias "showgraph_off" "net_graph 0; alias showgraph showgraph_on"
bind "F10" "showgraph"
rate 80000


Does it matter if my steam is in D drive?
And the folders were manually created as there were no folder with that extension.


It doesn't matter what drive your steam folder is in but you shouldn't have to create the folders to put the file in. The folder should already exist and be full of other happy files to keep autoexec.cfg company.

Just glancing at your code, it contains the following mistakes:
dota_hud_health_bars should be dota_hud_healthbars
duplicates of the line: net_graph 1
There might be more mistakes, but those are the ones that leapt out at me.
Road to 6sange
Skullflower
Profile Joined July 2010
United States3779 Posts
May 15 2012 17:15 GMT
#14
On May 15 2012 17:37 tauon wrote:
Command: dota_shop_force_hotkeys
Description: hotkeys up the shop. ie qwerty to choose a tab and 123... to choose an item.
Example: dota_shop_force_hotkeys 1
Default: "0", off by default


I swore there was an option for this under interface. Or does that do something completely different?
The ruminations are mine, let the world be yours.
tauon
Profile Blog Joined January 2012
Australia1278 Posts
May 16 2012 08:52 GMT
#15
On May 16 2012 02:15 Skullflower wrote:
Show nested quote +
On May 15 2012 17:37 tauon wrote:
Command: dota_shop_force_hotkeys
Description: hotkeys up the shop. ie qwerty to choose a tab and 123... to choose an item.
Example: dota_shop_force_hotkeys 1
Default: "0", off by default


I swore there was an option for this under interface. Or does that do something completely different?


The option in the main menu will allow you to open the shop with your hotkeys but the option `dota_shop_force_hotkeys' will allow you to buy items with your hotkeys. You press qwer to access a column and a 1-9 buy an item. I just checked and I don't think `dota_shop_force_hotkeys' can be accessed from the menu.
Road to 6sange
Tobberoth
Profile Joined August 2010
Sweden6375 Posts
May 16 2012 10:20 GMT
#16
Wow, that's so useful, being able to deny creeps without attack-moving... surprised it's allowed though, even though it's not a huge deal.
Narcind
Profile Blog Joined May 2010
Sweden2489 Posts
May 16 2012 11:05 GMT
#17
On May 16 2012 19:20 Tobberoth wrote:
Wow, that's so useful, being able to deny creeps without attack-moving... surprised it's allowed though, even though it's not a huge deal.


I've never understood why some people think stuff like this is so useful. I attack move for last hitting enemy creeps too, and it doesn't hurt me in any way, shape or form?
Coal
Profile Joined July 2011
Sweden1535 Posts
May 16 2012 11:52 GMT
#18
Some amazing stuff in this guide, thanks alot for posting!
In order to succeed, your desire for success should be greater than your fear of failure.
Westerhound
Profile Joined October 2010
Finland69 Posts
Last Edited: 2012-05-16 12:10:52
May 16 2012 12:06 GMT
#19
On May 16 2012 17:52 tauon wrote:
Show nested quote +
On May 16 2012 02:15 Skullflower wrote:
On May 15 2012 17:37 tauon wrote:
Command: dota_shop_force_hotkeys
Description: hotkeys up the shop. ie qwerty to choose a tab and 123... to choose an item.
Example: dota_shop_force_hotkeys 1
Default: "0", off by default


I swore there was an option for this under interface. Or does that do something completely different?


The option in the main menu will allow you to open the shop with your hotkeys but the option `dota_shop_force_hotkeys' will allow you to buy items with your hotkeys. You press qwer to access a column and a 1-9 buy an item. I just checked and I don't think `dota_shop_force_hotkeys' can be accessed from the menu.


Think there are options for both opening the shop and shopping with hotkeys. The latter ones (aka dota_shop_force_hotkeys) is in the gameplay options instead of the controls though.

The graph position can also be changed with the commands net_graph_pos [0,1,2 for right, middle, left I think] and net_graph_height, which I cant remember how it works cause Im a noob.

Maxing the fps at 60 makes the game seem quite stuttery even if monitor refresh rate is only 60Hz, so just bump it up to 120 if your computer can handle it. In that case you obviously have to set mat_vsync to 0 as well so it doesnt cap fps. mat_vsync should not be set to 1 if the game looks fine without it anyway, since it has a bit of a performance hit and causes mouse lag and all that kinda stuff that no one wants sometimes

On May 15 2012 21:23 LaiShin wrote:
I have created my autoexec.cfg, but I can't get it working.

+ Show Spoiler +

net_graph 1
dota_force_right_click_attack 1
dota_hud_health_bars 3
dota_health_per_vertical_marker 250
dota_minimap_hero_size 999
fps_max 101
cl_updaterate 101
cl_cmdrate 101
net_graphinsetbottom "418" // 100 to place below scoreboard
net_graphinsetright "-80" // 600 to place below scoreboard
net_graphproportionalfont "0" // Resize font
net_graph "1"
alias "showgraph" "showgraph_off"
alias "showgraph_on" "net_graph 1; alias showgraph showgraph_off"
alias "showgraph_off" "net_graph 0; alias showgraph showgraph_on"
bind "F10" "showgraph"
rate 80000


Does it matter if my steam is in D drive?
And the folders were manually created as there were no folder with that extension.


Doesnt matter what drive steam is in, as long as your autoexec.cfg is in Steam\steamapps\common\dota 2 beta\dota\cfg\ Also putting cl_updaterate and cl_cmdrate that high doesnt help you at all, just makes you use more bandwidth than necessary (40 is good like OP said)

On May 15 2012 21:29 imweakless wrote:
thank you so much for this.. btw is their a list for console commands with appropriate description?


VDC list
Dota2 Wiki list

Dunno if the two are different from each other, but VDC is for general source engine so its gonna have some commands that are useless for Dota2. Theres so many commands that theres probs never going to be a complete list with descriptions.
Tobberoth
Profile Joined August 2010
Sweden6375 Posts
May 16 2012 12:27 GMT
#20
On May 16 2012 20:05 Canas wrote:
Show nested quote +
On May 16 2012 19:20 Tobberoth wrote:
Wow, that's so useful, being able to deny creeps without attack-moving... surprised it's allowed though, even though it's not a huge deal.


I've never understood why some people think stuff like this is so useful. I attack move for last hitting enemy creeps too, and it doesn't hurt me in any way, shape or form?

Less actions = faster = better.
1 2 3 4 5 15 16 17 Next All
Please log in or register to reply.
Live Events Refresh
PiGosaur Monday
00:00
#43
davetesta40
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ProTech16
StarCraft: Brood War
Rain 6309
ggaemo 2429
Zeus 861
Backho 602
Larva 371
Leta 173
PianO 162
Nal_rA 108
Dewaltoss 78
Aegong 60
[ Show more ]
Noble 14
ivOry 6
Stormgate
WinterStarcraft1007
Dota 2
BananaSlamJamma87
XcaliburYe40
Counter-Strike
Stewie2K819
Other Games
summit1g6652
Fnx 2731
singsing620
Tasteless208
Organizations
Other Games
gamesdonequick843
StarCraft: Brood War
UltimateBattle 78
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 15 non-featured ]
StarCraft 2
• Sammyuel 46
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Rush1707
• Stunt267
• HappyZerGling155
Other Games
• Scarra856
Upcoming Events
WardiTV Summer Champion…
3h 56m
Stormgate Nexus
6h 56m
uThermal 2v2 Circuit
8h 56m
The PondCast
1d 2h
WardiTV Summer Champion…
1d 3h
Replay Cast
1d 16h
LiuLi Cup
2 days
uThermal 2v2 Circuit
2 days
RSL Revival
2 days
RSL Revival
3 days
[ Show More ]
uThermal 2v2 Circuit
3 days
CSO Cup
3 days
Sparkling Tuna Cup
4 days
uThermal 2v2 Circuit
4 days
Wardi Open
5 days
RotterdaM Event
5 days
RSL Revival
6 days
Liquipedia Results

Completed

ASL Season 20: Qualifier #2
FEL Cracow 2025
CC Div. A S7

Ongoing

Copa Latinoamericana 4
Jiahua Invitational
BSL 20 Team Wars
KCM Race Survival 2025 Season 3
BSL 21 Qualifiers
HCC Europe
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1
BLAST.tv Austin Major 2025
ESL Impact League Season 7
IEM Dallas 2025

Upcoming

ASL Season 20
CSLPRO Chat StarLAN 3
BSL Season 21
BSL 21 Team A
RSL Revival: Season 2
Maestros of the Game
SEL Season 2 Championship
WardiTV Summer 2025
uThermal 2v2 Main Event
MESA Nomadic Masters Fall
Thunderpick World Champ.
CS Asia Championships 2025
Roobet Cup 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.