Avançado,  Console,  Guia

GUIA PARA COMANDOS DE CONSOLE E ARQUIVOS DE AUTOEXEC DO DOTA 2

Este post tem por objetivo jogar alguma luz sob configurações do Dota via console e scripts de autoexec do Dota 2. Por tal razão, este post tem o conteúdo um pouco mais avançado, mas ainda assim tentarei esclarecer todos os pontos possíveis para que possa ser entendível por qualquer jogador.

Existe uma escassez de conteúdo nesse sentido e, por diversas vezes, encontrar soluções para problemas corriqueiros leva mais tempo do que a solução em si. O maior exemplo são os binds de runas, que levei vários dias pesquisando e formulando soluções até encontrar um que realmente funcionasse.

Antes de entrar em quaisquer detalhes, vamos dar alguns exemplos de coisas que você pode fazer usando o console ou o autoexec:

  • Você pode denar creeps apenas dando right click nelas (sem que seja necessário usar a tecla de ataque);
  • Você pode acionar um marcador de range às magias;
  • Você pode adicionar hotkeys para automatizar compras no shop;

A maior parte dessas opções não pode ser acessada pelo cliente do jogo e devem ser alteradas nos arquivos de configuração ou por console.

1. INTRODUÇÃO

1.1 O que é console?

Assim como temos no Windows, Linux e MacOS telas usualmente chamadas de prompts de comando, ou terminais, caracterizadas por telas pretas onde o usuário realiza operações através da digitação de textos, praticamente sem interface gráfica, o Dota também tem essa opção. É uma herança da plataforma Source e já muito conhecida pela maior parte dos jogadores de Counter-Strike.

Figura 1 – Console do Dota 2

Console

Ao acessar o console do Dota 2 a navegação gráfica fica desabilitada, de modo que você só consegue realizar operações dentro do próprio console.

Através do console é possível fazer alterações em parâmetros do Dota em tempo real, que na maior parte das vezes proporcionam modificações que visam maior conforto do jogador, de maneira que ele possa facilitar sua interpretação, leitura e uso dos recursos do jogo. A maior consequência disso é a otimização do desempenho. O problema desses comandos executados via console é que a maioria não é permanente, ou seja: serão redefinidos para seus valores iniciais toda vez que o Dota for reiniciado.

1.2 O que são arquivos de configuração, autoexec e scripts?

Esses arquivos de configuração são arquivos alterados na pasta de instalação do Dota, na sua maioria no formato .cfg e que permitem a alteração dos mesmos parâmetros que podem ser modificados pelo console. A diferença é que alterações feitas nos arquivos de configuração sempre serão aplicados toda vez que você inicializar o jogo, sendo essa a principal diferença para os comandos executados via console.

Esses arquivos muitas vezes são chamados de autoexecs por serem executados automaticamente ao iniciar o Dota e, principalmente, porque o arquivo de configuração mestre, que fará a maior parte dessas mudanças, deve ser nomeado como autoexec.cfg. Às vezes esses arquivos também são chamados de scripts, em alusão aos arquivos .bat do Windows, que realizam, com apenas um clique, diversas alterações que só seriam possíveis via prompt de comando.

No entanto, não devem ser confundidos com outros scripts de automação no Dota, que permitem que o usuário crie uma série comandos encadeados dentro do jogo, como por exemplo criando atalhos para invocação de magias do Invoker. Sendo assim, não é objetivo deste texto discutir sobre esses tipos de scripts. Esses scripts muitas vezes são chamados de macros.

1.3 Posso usar essas configurações? Elas não são consideradas cheats?

Sim, você pode usar perfeitamente. Elas não são consideradas cheats porque, apesar de serem alteradas de maneiras não convencionais, são opções que foram disponibilizadas para jogadores mais avançados, que pretendem adaptar o Dota às suas necessidades, fraquezas e habilidades, e não ao contrário.

Essa afirmativa pode ser sustentada por um argumento muito simples: além dos comandos de console serem frequentemente difundidos nos posts de atualização do blog oficial do Dota 2, o processo necessário para habilitá-los vem de um comando que foi divulgado abertamente, pela própria Valve. Sendo assim, todo o processo é seguro, e não colocará você na mira do VAC (Valve Anti-Cheat System).

2. HABILITAR O CONSOLE E OS ARQUIVOS DE CONFIGURAÇÃO

Como foi mencionado anteriormente, é necessário informar ao Dota que deseja-se habilitar o console ou utilizar-se arquivos de configuração personalizados. Por padrão, essas opções ficam desabilitadas. Pode-se inclusive habilitar-se ambos ou apenas uma das duas opções. Entretanto, essa configuração é realizada pelo mesmo procedimento que será descrito agora.

2.1 Habilitar console no Dota 2

Para habilitar o console no Dota 2 o procedimento é muito simples. Os passos são:

  1. Com o Dota fechado, abra a Steam;
  2. Clique com o botão direito do mouse sob o ícone do Dota;
  3. Selecione “Properties”;
  4. Na aba “General “selecione “Set launch options..”
  5. Na janela que abrir, escreva -console;
  6. Clique em “Ok” e em seguida em “Close”.

À partir daí seu Dota estará habilitado para usar o console, que abrirá automaticamente ao iniciar o Dota conforme mostrado na Figura 1.

Figura 2 – Procedimento para habilitar-se o console no Dota 2.

console

Por padrão a tecla de atalho para abrir o console dentro do jogo é ‘ (apóstrofe), mas essa opção pode ser alterada nas opções de hotkey dentro do próprio Dota.

2.2 Habilitar leitura de arquivos de configuração

O procedimento é muito semelhante ao de habilitar-se o console, alterando-se apenas o comando digitado nas “launch options”. De qualquer maneira, o procedimento completo está escrito abaixo:

  1. Com o Dota fechado, abra a Steam;
  2. Clique com o botão direito do mouse sob o ícone do Dota;
  3. Selecione “Properties”;
  4. Na aba “General” selecione “Set launch options..”
  5. Na janela que abrir, escreva -enable_addons;
  6. Clique em “Ok” e em seguida em “Close”.

Figura 3 – Opções de inicialização definidas para reconhecer arquivos de configuração

enable addons

2.3 Outras opções de inicialização do Dota 2

Embora não seja o escopo deste guia, a inserção de algumas opções de inicialização diferentes do Dota 2 podem ser úteis, já que estamos falando de configurações avançadas e adequar o Dota às necessidades do jogador. Segue então abaixo uma lista com algumas dessas opções. Você pode usar quantas quiser, desde que coloque-as sempre com símbolo do – e separadas por espaço.

Comando do launch: -novid
Descrição: Desabilita o vídeo de introdução que é mostrado toda vez que o Dota é iniciado.

Comando do launch: -noforcemaccel -noforcemspd -useforcedmparms
Descrição: Desabilita a aceleração do mouse.

Comando do launch: -high
Descrição: Automaticamente aloca o Dota como alta prioridade na CPU. É útil se outros processos estiverem rodando em backgroud.

Comando do launch: -windowed -w # -h # -noborder
Descrição: Inicializa o Dota no modo “janela sem borda” com a resolução especificada. Coloque a resolução desejada no lugar dos símbolos # para largura [w] e altura [h].

3. COMANDOS UTEIS DO CONSOLE

Abaixo segue uma lista de alguns comandos úteis do console. Para utilizá-los é necessário digitá-los dentro do console com os devidos parâmetros ou colocá-los no arquivo de configuração. Sobre o arquivo de configuração abordaremos mais adiante. Em geral quando um comando necessitar de um número 1 ou 0 em seguida, significa que a opção fica habilitada ou não. 1 para ativada e 0 para ativada.

Comando: dota_force_right_click_attack
Descrição: Altera a propriedade de dar denies usando right click ao invés de comando de ataque.
Exemplo: dota_force_right_click_attack “1”
Padrão: “0”, usar deny com o botão direito fica desabilitado.
Comentários: O único problema com este comando é que não será mais possível seguir um aliado apenas clicando com um botão direito nele, sendo necessário utilizar o m nesses casos (ou sua hotkey configurada para mover-se). 

Comando: dota_disable_range_finder
Descrição: Quando uma skill é selecionada, seu range é mostrado pelo range finder
Exemplo: dota_disable_range_finder “0”
Padrão: “1”, range finder fica desabilitado

Comando: dota_screen_shake
Descrição: Vibração da tela quando determinadas skills são usadas
Exemplo: dota_screen_shake “0”
Padrão: “1”, a tela vibra quando determinadas skills são usadas.

Comando: dota_player_multipler_orders
Descrição: Permite que o jogador controle todas as unidades usando CTRL
Exemplo: dota_player_multipler_orders “1”
Padrão: “0”, desabilitado

Comando: chat_join
Descrição: Automaticamente entra em um chat ao iniciar o jogo.
Exemplo: chat_join “teamliquid”

Comando: dota_player_add_summoned_to_selection
Descrição: Unidades criadas são automaticamente adicionadas ao grupo quando summonadas
Exemplo: dota_player_add_summoned_to_selection “1”

Comando: dota_minimap_hero_size
Descrição: Define o tamanho dos heróis no minimap
Exemplo: dota_minimap_hero_size “700”
Padrão: “600”

Comando: dota_unit_fly_bonus_height
Descrição: Define a altura de unidades voadoras
Exemplo: dota_unit_fly_bonus_height “10”
Padrão: “150”

Comando: hud_sticky_item_name
Descrição: Altera o item que aparece por padrão na sessão fixa do quickbuy (o padrão é um TP)
Exemplo: hud_sticky_item_name “item_tpscroll”
Notas: Códigos de itens podem ser vistos clicando aqui

Comando: dota_always_show_player_names
Descrição: Mostra o nome dos jogadores acima dos heróis
Exemplo: dota_always_show_player_names “1”
Padrão: “0”, desligado

Comando: dota_sf_game_end_delay
Descrição: Define um tempo de atraso quando o jogo acaba no qual a tela de scores aparece
Exemplo: dota_sf_game_end_delay “0”
Padrão: Cerca de algo como “5”. Não tenho certeza.

Comando: dota_minimap_simple_colors
Descrição: Faz o esquema de cores do mapa similar ao Dota 1
Exemplo: dota_minimap_simple_colors “1”
Padrão: “0”, desligado por padrão

Comando: dota_shop_force_hotkeys
Descrição: Permite hotkeys para comprar no shop. Ex: QWERTY para escolher uma aba e números para escolher itens.
Exemplo: dota_shop_force_hotkeys 1
Padrão: “0”, desligado por padrão

Comando: bind, say_team
Descrição: Juntos esses comandos permitem que você mande mensagens padrão para o seu time ao pressionar uma tecla
Exemplo: bind “p” “say_team miss top”

Comando: dota_gamescon_althack
Descrição: Permite que você use ALT+QWEASD para usar itens
Exemplo: dota_gamescon_althack “1”

Comando: tv_nochat
Descrição: Pode habilitar ou desabilitar o chat de espectadores por padrão ao assistir uma partida.
Exemplo: tv_nochat “1”

Comando: dota_minimap_misclick_time
Descrição: Cria um atraso entre o tempo de clickar no minimap e realmente dar um comando, útil para evitar missclicks.
Exemplo: dota_minimap_misclick_time “0”

Comando: dota_apm
Descrição: Se você digitar isso no console durante um jogo ou ao final da tela de score, você pode ver seu APM médio.
Exemplo: dota_apm

Comando: dota_minimap_ping_duration
Comando: dota_minimap_ping_tag_duration
Descrição: Controla a duração de pings e marcações de x no mapa.
Exemplo: dota_minimap_pind_duration “1”

Comando: dota_sf_old_heropedia “1”
Descrição: Troca a tela de Learn para o padrão antigo, e não a baseada na web. Screenshot de exemplo.
Nota: Só funciona se o comando for executado antes do jogo carregar. Isso significa que deve ser colocado num arquivo de configuração como o autoexec.

Comando: dota_recent_event
Descrição: Move a tela para o local de ping mais recente. O melhor é atribuir esse comando a uma tecla, ao invés de digitá-lo no console.
Exemplo: bind “0” “dota_recent_event”

Comando: dota_camera_accelerate
Descrição: Define a velocidade de aceleração da câmera
Exemplo: dota_camera_accelerate “49”

De forma interessante, se você abrir o console ao final do jogo, isso automaticamente mostrará várias informações úteis sobre status do jogo. Exemplos são o dano total efetuado, tempo total de stun, distância total viajada por cada player.

Uma lista completa de todos os comandos disponíveis para o Console do Dota 2 pode ser encontrada aqui.

4. PREPARANDO E CONFIGURANDO UM ARQUIVO DE CONFIGURAÇÃO (autoexec)

Para criar um arquivo de configuração que é inicializado junto com o Dota 2, primeiro você precisa criar um arquivo no formato .txt e renomeá-lo para autoexec.cfg. Para isso você pode utilizar qualquer editor de texto, como Microsoft Word, Word Pad, Notepad ou, o meu preferido, Notepad++.

Esse arquivo deve ser colocado numa pasta específica onde dseu Dota está instalado. O local padrão para instalação do Dota é o seguinte caminho no Windows: C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota\cfg\. Esse local certamente será diferente se você não utiliza Windows, ou fez a instalação em uma partição de HD diferente. Se você não conseguir localizar facilmente onde está instalado seu Dota, você pode seguir os seguintes passos:

  1. Com o Dota fechado, abra a Steam;
  2. Clique com o botão direito do mouse sob o ícone do Dota;
  3. Selecione “Properties”;
  4. Na aba Local files selecione “Browse Local Files…”
  5. Uma janela do Windows Explorer irá abrir, dentro do diretório do Dota.

Uma vez que você localizar a referida pasta, cfg, seu arquivo de configuração (autoexec.cfg) deve ser colocado lá dentro.

Figura 4 – Como acessar os arquivos locais do Dota 2

local files

Cada linha desse arquivo é um comando. Observe que qualquer coisa após “//” numa linha particular não será lido pelo Source Engine (diz-se que aquela parte do código foi “comentada”). Os comandos que são aplicados aqui são os mesmos que podem ser utilizados no console.

Tenha em mente que o arquivo é lido de cima para baixo pela engine, ou seja, se você colocar o mesmo comando com diferentes parâmetros em diferentes linhas, apenas o último será aplicado.

Tenha cuidado ao criar o arquivo autoexec, pois muitas vezes o Notepad e outros programas terão a tendência a criar o arquivo com a extensão .txt no fim, gerando um arquivo autoexec.cfg.txt que não será lido.

Se você desejar desfazer qualquer uma dessas mudanças basta excluir a linha referida do arquivo, ou mesmo excluir todo o arquivo de configuração.

4.1 Uma breve explicação sobre binds

Uma das funções mais desejadas em arquivos de configuração de Dota 2 são configurações específicas que são acionadas por teclas acionadas dentro do Dota. Essa atribuição de teclas (hotkeys) à configurações específicas damos o nome de binds. E é aqui que começamos a entrar no território dos scripts e macros que à princípio não abordaremos nesse post.

O maior exemplo de bind é o bind dos spots de runas.  Esse bind serve para deslocar automaticamente a visão para o spot de runa, para conferir se existe alguma runa disponível. Existem variações desse script, como por exemplo:

  • Uma só tecla que cada vez que é apertada alterna a visão entre o herói, a runa do top e a runa do bot;
  • Uma tecla separada para cada runa, ficando a cargo do usuário voltar a seleção para o herói, ou pressionar novamente para voltar a visão para o herói;
  • Uma tecla separada para cada runa que enquanto pressionada mostra a runa e quando liberada volta a visão para o herói;

Esse último cenário é o que considero mais ideal, e que uso no meu arquivo de configuração.

Segue então um exemplo de bind para acionar uma configuração específica:

[code]
bind "0" exec autoexec.cfg"
[/code]

Esse código mostrado executa novamente o arquivo de configuração, de modo que, se quaisquer alterações forem feitas no arquivo autoexec.cfg enquanto o Dota está rodando, elas podem ser reaplicadas enquanto jogando.

Existem no entanto dois dificultadores para o bind de teclas. O primeiro diz respeito a saber exatamente qual o nome da tecla que se deseja dar o bind. Teclas de letras são fáceis, mas quando se trata de símbolos, numerais, teclas extras do teclado ou botões extras do mouse, o usuário pode encontrar dificuldade em saber como o Dota reconhece essas teclas específicas. A dica que dou é entrar no Dota, na parte de configuração de hotkeys, escolher alguma das opções, como por exemplo a de “Atacar” que originalmente possui o valor “A” e atribuir para a tecla que se deseja conferir a nomenclatura, como um dos botões de número do teclado numérico, 1 por exemplo. Quando isso for feito, o valor anteriormente preenchido como “A” será substituído pelo valor efetivamente reconhecido pelo Dota para a nova tecla, seguindo o exemplo, provavelmente a entrada mudaria para “KPAD_1”, significando que o 1 do teclado numérico é reconhecido por este nome. Assim, uma vez como nome obtido, pode-se restaurar a tecla de “Atacar” para o estado padrão “A” e escrever no arquivo de configuração o bind para a tecla correta “KPAD_1”.

O outro problema também frequente na hora de realizar o bind, é que essa tecla já pode estar sendo utilizada como uma hotkey do Dota 2, e por esse motivo não é reconhecida dentro do jogo. Para evitar esse problema é necessário realizar dois procedimentos. Primeiramente é necessário verificar na interface do Dota se não existe nenhuma hotkey atribuída para aquele bind. Caso não tenha, segue-se para o procedimento seguinte. O próximo passo é abrir um arquivo de nome config.cfg que se encontra na mesma pasta que você colocará o autoexec. Esse arquivo contém informações de hotkeys padrões do Dota e deve ser alterado conforme a necessidade do usuário. Em ambas as situações, não faz diferença se você vai alterar a hotkey ou o bind, desde que eles sejam diferentes.

Segue abaixo um exemplo completo de bind para mostrar as informações de rede (ping) na tela na tela. No caso a tecla de bind é o F10. Você talvez tenha que alterar os números 418 e -80 para adequar as suas resoluções e necessidades.

[code]
net_graphinsetbottom "418" // 100 para colocar abaixo do scoreboard
net_graphinsetright "-80" // 600 para colocar abaixo do scoreboard
net_graphproportionalfont "0" // alterar tamanho da fonte
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"[/code]

5. EXEMPLO DE ARQUIVO DE CONFIGURAÇÃO

Apresento então um exemplo de arquivo de configuração completo. Esse arquivo originalmente foi baseado no arquivo de configuração pessoal do jogador profissional Jacky EternaLEnVy Mao, e posteriormente adaptado para meu uso pessoal.

[code]

// Dota2 – autoexec.cfg
// Troca cor do minimapa.
dota_unit_use_player_color "1";
dota_friendly_color_b "0.8"; dota_friendly_color_g "0.7"; dota_friendly_color_r "0.3";
dota_enemy_color_b "0.4"; dota_enemy_color_g "0.4"; dota_enemy_color_r "0.8";

// Faz resultados aparecerem imediatamente depois do jogo
dota_sf_game_end_delay 0

//Atribui 0 como bind para executar novamente o autoexec
bind "0" exec autoexec.cfg"

bind "P" "+show_runetop" // Atribui "P" como a tecla para mover a câmera para a runa do top
bind "L" "+show_runebottom" //Atribui "L" como tecla para mover a câmera para a runa do bot

alias "+show_runetop" "dota_camera_set_lookatpos -2273.898682 1832.745483" //Cria um nome para o procedimento de mover a câmera para a posição definida pelas coordenadas especificadas ao segurar a tecla para runa do top
alias "-show_runetop" "dota_select_all; dota_select_all; +dota_camera_follow" //Adiciona ao nome anterior outros procedimentos para retornar a visão ao herói ao soltar a tecla

alias "+show_runebottom" "dota_camera_set_lookatpos 3035.773438 -2472.680176" //O mesmo que especificado para runa do top
alias "-show_runebottom" "dota_select_all; dota_select_all; +dota_camera_follow" //O mesmo que o especificado para runa do bot

net_graph 0 //Desliga gráfico mostrando o ping e outras informações de rede (desligado por padrão)
cl_cmdrate 30 //Numero máximo de pacotes enviados ao servidor por segundo
cl_interp 0
cl_interp_ratio 2
cl_smoothtime 0
cl_updaterate 30 //Número de pacotes por segundo que você solicita do servidor. **Notas adicionais: cl_cmdrate e cl_updaterate estão limitados entre 20 – 40 no lado do servidor. Modificar esses valores para algo fora do range não causará nenhum efeito benéfico adicional a sua conexão.
con_enable 0 //Permite o console ser ativado
con_filter_enable 0 //Filtra saídas do console baseado nas configurações do con_filter_text. 1 filtra completamente, 2 mostra texto filtrado mais claro
con_filter_text 0 //
con_notifytime 8 //Quanto tempo será mostrado comandos recentes do console na parte de cima da janela do jogo.
contimes 8 //Número de linhas do console que se sobrepõe para debug
developer 0 //Define o valor de nível de mensagem de developer
dota_ability_quick_cast 1 //
dota_always_show_player_names 1 //Se definido, sempre mostra o nome dos jogadores
dota_camera_accelerate 50 //
dota_camera_disable_zoom 0 //
dota_camera_speed 4000 //
dota_disable_range_finder 0 //**Valor "1" faz você ver o range das suas skills apenas passando o mouse por cima. Valor zero faz com que elas fiquem visíveis ao selecioná-las
dota_health_hurt_decay_time_max 0 //
dota_health_hurt_decay_time_min 0 //
dota_health_hurt_delay 0 //
dota_health_marker_major_alpha 255 //
dota_health_marker_minor_alpha 128 //
dota_health_per_vertical_marker 250 //Quanto de vida existirá em cada separador vertical de HP
dota_hud_healthbar_number 1 //Se definido como 1, o valor numérico de HP do seu herói será mostrado em cima da cabeça dele.
dota_killcam_show 0 //
dota_minimap_hero_size 1000 //
dota_minimap_misclick_time 0.2 //Tempo mínimo que o mouse deve permanecer no minimap antes de aceitar um comando de movimento. Usado para prevenir missclicks.
dota_pain_decay 0 //
dota_pain_factor 0 //
dota_pain_fade_rate 0 //
dota_pain_multiplier 0 //
dota_player_multipler_orders 0 //Colocando isso em 1, você só dará ordens para todas as múltiplas unidades selecionadas se utilizar o CTRL. Caso contrário só a unidade primária em foco será selecionada
dota_player_units_auto_attack 0
dota_reset_camera_on_spawn 0 //Se habilitado, a câmera volta pro seu herói quando ele renasce. Senão ela se mantém onde a visão do jogador estiver.
dota_screen_shake 0 //
dota_unit_fly_bonus_height 150 //
dota_unit_multiple_selection 0 //
engine_no_focus_sleep 50 //
fps_max 120 //Frame rate limiter.
mat_triplebuffered 0 //Isso significa que deseja-se buffering triplo se estivermos em modo fullscreen e vsync
mat_vsync 0 //Força sincronia vertical
rate 80000 //Max bytes/sec the host can receive data.
snd_musicvolume 0.5 //Volume da música (varia de 0 a 1).
volume 1 //Volume do som (varia de 0 a 1).
dota_player_teleport_requires_halt 1// Parar um teleport necessita pressionar a tecla de stop
dota_player_units_auto_attack_after_spell 0// Desabilita ataque após usar magia
[/code]

Você pode fazer o Download desse arquivo clicando aqui:

One Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: