Diminuindo o PING – LAG
Lista de comandos para diminuir o ping, lag e aumentar o FPS
- fastsprites 1
- fps_max 999
- fps_modem 999
- gl_max_size 256
- r_decals 0
- r_drawviewmodel 1
- r_dynamic 0
- r_mirroralpha 0
- r_mmx 1
- developer 1
- cl_rate 7500
- cl_cmdrate 13
- cl_updaterate 13
- r_decals 0
- mp_decals 0
- cl_showfps 1
- mp_decals 0
- rate 7500
- cl_allowupload 0
- cl_allowdowload 0
- cl_weather 0
- hud_fastswitch 1
- net_graph 3
- developer 1
- cl_lc 1
- cl_lw 1
- rate 5000
- cl_updaterate 30
- cl_cmdrate 30
Agora nesse texto abaixo vamos explicar melhor:
Primeiramente, vamos entender os comandos que irei abordar nesse tutorial:
- rate = Bytes por segundo limite que você vai receber do server
- cl_updaterate = pacotes por segundo que você vai pedir do server
- cl_rate = bytes por segundo limite que você vai enviar pro server
- cl_cmdrate = pacotes por segundo enviados ao server
Obs.: Byte é uma das menores unidades de dados existentes, 1000 bytes equivalem a 1kb(kilo byte), e 1000kb (1.000.000 bytes) equivalem a 1mb(mega byte) e assim por diante
Agora desça o console, e digite
Código:
- net_graph 3
- Vão aparecer umas informações no canto inferior direito da tela... Caso queira remove-los basta colocar "net_graph 0"
- A partir dessas informações você irá configurar suas rates para melhorar seu jogo....
Vamos entendê-las:
Choke: O server está demorando para responder. Você precisa diminuir seus pedidos de dados, ou procurar um server melhor.
Loss: Você está respondendo menos do que você pode. Você pode estar querendo enviar menos pacotes de dados do que sua net consegue, então, ocorre o loss. Para aliviar isso, ajuste o rate(aumentando o valor) para o mais próximo possível do sv_maxrate do server(para se basear, aumente o rate, se houver choke, você passou, então diminua d maneira q você não tenha loss), ou então aumente o cl_updaterate e cl_cmdrate pra tentar diminuir o loss.
Pacote(packet): Uma discreta parte da transmissão na net, o tamanho do pacote varia de quantos estão indo.
Ping: Tempo em milésimos de segundo que você leva pra alcançar o server. Na internet, as coisas funcionam assim, você envia pacotes de dados para um host, e esse host responde seu envio, o tempo que todos os pacotes enviados demoram pra alcançar esse host, e retornar ao seu pc é chamado de ping.
Se você estiver enviando ou recebendo pacotes de mais, e sua net não conseguir lidar com tantos, alguns deles serão perdidos, então, ocorrera choke, você precisa ajustar isso como citado acima. Caso você esteja enviando ou recebendo menos pacotes do que sua net é capaz de lidar, sua net ficara "vaga", e então, ocorrera loss. Então você ajusta o loss como citado acima também.
Pra você conseguir ajustar seu ping, você tem que configurar suas rates pra mandar tantos pacotes quando sua net pode, e tantos quantos o server pode receber, e pedir tantos pacotes quanto você pode receber, ou o server enviar. Criando uma harmonia no envio e recebimento de dados.
Obs.: Quando você ve "estou com 95 ms de ping". MS não é uma unidade, não é um tipo de dado, nem nada, os "ms" do seu ping, é uma sigla, que significa "mili-seconds" (ou milesimos, em portugues). Ou seja, se seu ping esta em 95, você esta demorando 95 milesimos pra enviar e receber os dados.
-------------------------
Server(caso você tenha criado o server):
Os comandos host:
Código:
- sv_minrate
- sv_maxrate
- sv_maxupdaterate
Deixe o "sv_minrate" SEMPRE em 0...
Para obter o número do sv_maxupdaterate, divida a velocidade do seu upload em kbps pelo número de players que tem no server, por exemplo: Se você tem 30kbps de up, e tem 3 players no seu server, 30:3=10, então, seu sv_maxupdaterate será de 10. Caso entre, ou saia um player, altere o número.
sv_maxrate é medido em bytes por segundo, e isso é o maximo que o server vai liberar para cada jogador, a cada segundo.
Se você está sozinho no mapa e naum está fazendo nada, o server precisa mandar cerca de 1000 bytes em 1 segundo, se você está num tiroteio, você vai precisar de cerca de 10.000 bytes por segundo.
Então, se você tem 30 kbps de up e você quer um maximo de 3 players, então você deve por 10000 como maxrate, caso queira um máximo de 4 players: 30:4= ~7, então, sua sv_maxrate deve ser aproximadamente 7200.
----------------------------
Client
Comandos que vou usar:
Código:
Rate
- cl_updaterate
- cl_cmdrate
- cl_rate
Rate é o número de bytes por segundo que você vai poder aceitar do server.
O objetivo aqui é chegar o mais próximo possível do sv_maxrate configurado no server, se você estiver tendo loss, aumente o valor, e se estiver tendo choke, diminua.
cl_updaterate é o número de pacotes por segundo que o client vai poder aceitar do server, este valor não pode ser superior a 100 (li uma vez que ele também não pode ser superior ao seu numero de fps), e nem inferior a 20.
Tendo loss, significa que você ta pedindo menos pacotes do que você pode receber, então, aumente o valor, tendo choke, você esta pedindo mais pacotes do que pode receber, então, diminua.
cl_rate é o mesmo que rate, mas dessa vez é o número de bytes por segundo que você pode enviar para o server, deixe isso aqui em 9999 pra qualquer net
cl_cmdrate é o número de pacotes por segundo que o client vai tentar mandar para o server (li uma vez que esse valor não pode ser superior ao seu fps), esse valor não deve ser inferior a 20, mesmo esquema, loss aumenta, choke diminui.
------------------------------
Erros
cl_FlushEntityPacket- Esse erro pode ser causado por você ter o cl_updaterate e cl_cmdrate altos demais para as rates atuais. Tente diminuir eles pra 50 ou 40, você pode tentar aumentar a rate, se você tiver conexão rápida o suficiente (enquanto você aumenta a rate observe seu loss, se você estiver tendo loss diminua, até não ter mais loss)
Choke - Provavelmente vai ocorrer choke quando as tiver agitado, tipo todo mundo atirando, tacando bomba, etc. Se o choke não estiver aumentando muito, e estiver indo na faixa de 10, então ta tudo ok, mas se o valor estiver indo muito rápido constantemente, e afetando o jogo, então tente diminuir o cl_updaterate e o cl_cmdrate em 5, e veja como o choke se comporta.