Gerador de mira do CS2 e decodificador de código

Cole um código de mira para ver o que realmente tem nele — depois mude o que quiser e leve de volta para o jogo um código válido ou um bloco de comandos de console.

Cole um código de mira do CS2

No jogo, o mesmo código vai nas configurações da mira, na opção de compartilhar ou importar. Aqui ele é desmontado primeiro.

Fundo

Desenho próprio do ToolGuild numa altura de referência de 1080 pixels, com a distância do centro fixa. No jogo, essa distância muda com a imprecisão da sua arma nos estilos dinâmicos. Não é perfeito no pixel e não usa nenhuma imagem do jogo.

Seu código de mira

CSGO-EiyPn-QMRDm-v6RvD-uZZaH-AbGiJ

Da comunidadeverificado em 31 de ago. de 2026

O que este código contém

O editor do jogo mostra controles. Isto mostra o conteúdo — inclusive as configurações que você não ia sair procurando.

cl_crosshairstyle
4
cl_crosshairsize
2.5
cl_crosshairthickness
1
cl_crosshairgap
-2
cl_fixedcrosshairgap
-2
cl_crosshairdot
0
cl_crosshair_t
0
cl_crosshairgap_useweaponvalue
0
cl_crosshaircolor
1
cl_crosshaircolor_r
50
cl_crosshaircolor_g
250
cl_crosshaircolor_b
50
cl_crosshairusealpha
1
cl_crosshairalpha
255
cl_crosshair_drawoutline
1
cl_crosshair_outlinethickness
1
cl_crosshair_recoil
0
cl_crosshair_dynamic_splitdist
7
cl_crosshair_dynamic_splitalpha_innermod
1
cl_crosshair_dynamic_splitalpha_outermod
0.5
cl_crosshair_dynamic_maxdist_splitratio
0.3
Detalhes técnicos

Os dezoito bytes que o código carrega, do mais significativo para o menos, e o inteiro em que cada configuração é armazenada. Nada disso é necessário para usar a ferramenta; está aqui porque uma página que diz decodificar deveria mostrar como faz.

cl_crosshairstyle = 4
cl_crosshairsize = 25
cl_crosshairthickness = 10
cl_crosshairgap = -20
cl_fixedcrosshairgap = -20
cl_crosshairdot = 0
cl_crosshair_t = 0
cl_crosshairgap_useweaponvalue = 0
cl_crosshaircolor = 1
cl_crosshaircolor_r = 50
cl_crosshaircolor_g = 250
cl_crosshaircolor_b = 50
cl_crosshairusealpha = 1
cl_crosshairalpha = 255
cl_crosshair_drawoutline = 1
cl_crosshair_outlinethickness = 2
cl_crosshair_recoil = 0
cl_crosshair_dynamic_splitdist = 7
cl_crosshair_dynamic_splitalpha_innermod = 10
cl_crosshair_dynamic_splitalpha_outermod = 5
cl_crosshair_dynamic_maxdist_splitratio = 3

Mantidos sem alteração: 1, 0, 0, 0, 0, 0. Cinco partes do registro não são explicadas por nenhuma configuração que o ToolGuild conhece, e são gravadas de volta exatamente como chegaram.

Comandos de console

Vinte e uma linhas, em texto puro, para um autoexec.cfg. O ToolGuild não entrega a ninguém um arquivo para executar.

cl_crosshairstyle "4"
cl_crosshairsize "2.5"
cl_crosshairthickness "1"
cl_crosshairgap "-2"
cl_fixedcrosshairgap "-2"
cl_crosshairdot "0"
cl_crosshair_t "0"
cl_crosshairgap_useweaponvalue "0"
cl_crosshaircolor "1"
cl_crosshaircolor_r "50"
cl_crosshaircolor_g "250"
cl_crosshaircolor_b "50"
cl_crosshairusealpha "1"
cl_crosshairalpha "255"
cl_crosshair_drawoutline "1"
cl_crosshair_outlinethickness "1"
cl_crosshair_recoil "0"
cl_crosshair_dynamic_splitdist "7"
cl_crosshair_dynamic_splitalpha_innermod "1"
cl_crosshair_dynamic_splitalpha_outermod "0.5"
cl_crosshair_dynamic_maxdist_splitratio "0.3"

Edite

Formato

Estilo

Formato

Cor

Cor

Verde

Cor

Contorno

Contorno

Comportamento dinâmico

Estes quatro têm efeito nos estilos que se movem. Eles vão no código qualquer que seja o estilo escolhido, por isso estão aqui em vez de escondidos.

Comportamento dinâmico

Um segundo valor de espaçamento que o registro carrega junto com o normal. Fica num número copiado com mais frequência do que qualquer outra configuração, por isso esta página o mostra.

Suas miras

Até 12, guardadas neste navegador com os nomes que você der. Nada é enviado para lugar nenhum e não existe conta.

Nada salvo ainda.

Lado a lado

Escolha duas ou três e veja lado a lado. O que difere é marcado; nada recebe nota.

Escolha duas das suas miras salvas, ou a que você está editando, para compará-las.

O que isto faz

Cole um código e ele é decodificado, não só carregado. O Counter-Strike 2 importa um código de mira e mostra controles deslizantes. Ele não conta que o código que mandaram para você está com a opção de acompanhar o recuo ligada, um contorno de 0,5 e um espaçamento fixo de −9. Esta página lista cada uma das vinte e uma configurações que o código carrega, com os valores às claras.

Edite com uma prévia maior que a do jogo. Mude o tamanho, o espaçamento, a espessura, o ponto, o formato de T, o contorno, a cor e o alfa e veja a forma mudar. Depois leve qualquer uma das saídas: um código válido para importar, ou os comandos de console para colar num arquivo de configuração.

Guarde várias e compare. Até doze miras ficam neste navegador, com os nomes que você der, e duas ou três quaisquer podem ficar lado a lado — as imagens e as configurações alinhadas, com as diferenças marcadas. Sem conta, nada enviado para lugar nenhum.

Um código com problema é recusado, e você fica sabendo por quê. Um caractere digitado errado, um tamanho errado, uma letra que o alfabeto não tem ou uma soma de verificação que não bate com o conteúdo geram uma mensagem específica, em vez de um dar de ombros ou, pior, de uma mira com cara de certa que não é a que mandaram para você.

O que existe dentro de um código de mira

Um código de mira é um pequeno registro compactado, não o nome de uma predefinição. `CSGO-` seguido de vinte e cinco caracteres em cinco grupos. Os caracteres são dígitos de um número em base 57, num alfabeto que deixa de fora o I maiúsculo, o l e o g minúsculos e os dígitos 0 e 1 — os que as pessoas confundem. Esse número ocupa dezoito bytes, e esses bytes são as suas configurações.

O primeiro byte é uma soma de verificação: a soma dos outros dezessete, módulo 256. É isso que permite detectar um código digitado errado em vez de ele ficar errado sem avisar, e esta página confere isso antes de mostrar qualquer coisa.

As configurações são guardadas como números inteiros, nas unidades do próprio jogo. `cl_crosshairsize 1.7` é guardado como 17, não como 1,7. Esta página mantém os valores assim e só os transforma em decimais na hora de exibir — então nada do que você vê é convertido de volta para o código. Um tamanho de 819,1 sobrevive a isso; uma ferramenta que fizesse a volta passando por um decimal não sobreviveria.

O campo de tamanho é mais largo do que parece. Ele ocupa treze bits espalhados em dois bytes, e é assim que um código consegue carregar uma mira de 255. Duas das quatro implementações que o ToolGuild comparou leem o campo como oito bits, e códigos reais resolvem a questão: três códigos publicados como miras que ocupam a tela de propósito são os únicos, num corpus de 131, que usam o segundo byte de tamanho.

E um campo é mais estreito do que algumas ferramentas supõem. A distância da divisão é lida aqui de três bits, o que dá de 0 a 7. Duas implementações leem sete bits desse byte; outras duas leem o byte inteiro, mas são de antes de existir o acompanhamento do recuo. Nada que o ToolGuild encontrou define quem está certo — só um código real em 131 usa algum dos bits em disputa, e ninguém publica qual é a distância da divisão dele. Então esta página lê a parte em que todos concordam e carrega o resto sem mexer, em vez de escolher um lado e apresentá-lo como fato.

Cinco partes do registro não são explicadas por nenhuma configuração conhecida — um byte depois da soma de verificação, um bit abaixo do estilo, três bits acima do tamanho e os dois últimos bytes. Todos os códigos reais conferidos carregam os mesmos valores ali. Esta página mantém essas partes intactas durante a sua edição em vez de zerá-las, porque “não vimos isso variar” não é o mesmo que “isso não significa nada”.

O que a prévia é, e o que ela não é

A prévia é o desenho que o ToolGuild faz das suas configurações, e é uma aproximação. Ela é desenhada a partir dos números, com formas do próprio ToolGuild, sem nenhuma imagem do jogo. Duas coisas nela não são o jogo, e dizer isso é o objetivo desta seção.

A distância do centro fica fixa. No jogo essa distância não é fixa: nos estilos dinâmicos ela varia com a imprecisão da arma quando você anda, pula e atira, e nos estáticos entra o `cl_fixedcrosshairgap`. Uma imagem parada precisa escolher um valor, então esta página escolhe um neutro e avisa. O que a prévia reproduz com fidelidade é tudo aquilo entre o que você realmente está escolhendo: o comprimento dos braços, a espessura, o espaçamento, o ponto, a falta do braço de cima, o contorno, a cor e o alfa.

Dois dos seis estilos não são desenhados. Os estilos que as fontes chamam de *default* são descritos como estilos que trocam partes da sua forma pela forma do próprio jogo, e o ToolGuild não tem um modelo verificado do que eles trocam. Então ele prefere não desenhar e diz em qual estilo não desenhou, em vez de mostrar uma imagem errada com toda a confiança. Os quatro estilos clássicos são desenhados.

Ela não é perfeita no pixel, e esta página não vai dizer que é. O tamanho com que a sua mira é desenhada acompanha a resolução vertical da sua tela; a prévia é desenhada para uma altura e diz qual. Nada aqui simula tiros, movimento ou o jeito como uma mira dinâmica se divide.

Nada disso se apoia numa publicação da Valve, porque o ToolGuild não encontrou nenhuma. A checagem de pesquisa não encontrou uma publicação da Valve sobre o formato do código nas fontes oficiais que consultou: o site do Counter-Strike, a ajuda da Steam para o jogo e a wiki de desenvolvedores da Valve, que não respondeu a um pedido simples. É o que uma busca encontrou, não uma afirmação de que a Valve nunca documentou isso em lugar nenhum.

Por isso o codec se apoia em quatro implementações escritas de forma independente e legíveis publicamente — em TypeScript, C#, JavaScript e Python, sob três licenças diferentes e uma sem licença informada — e em 131 códigos reais, dos quais 129 passam na própria soma de verificação e se recodificam neles mesmos caractere por caractere. Vinte foram publicados, junto com a própria lista de valores de console, por alguém que não gerou o código, e todos os campos batem nos vinte.

A base dos estilos e dos intervalos editáveis é melhor do que isso. Ela vem da própria tabela de ConVars do jogo — os valores padrão, os mínimos e máximos declarados e os textos de ajuda —, lida de dois dumps mantidos de forma independente cujo texto bate palavra por palavra. É assim que esta página sabe que os estilos 0, 1 e 3 estão desativados hoje e que o alfa da divisão externa não desce abaixo de 0,3.

Todas as linhas de origem continuam dizendo “Da comunidade” e o nível de verificação continua em 1, porque até as palavras do próprio jogo chegam ao ToolGuild por uma transcrição que ninguém aqui conferiu com o binário.

Um exemplo passo a passo

Alguém manda para você `CSGO-cTKPj-PuKqq-5T8A4-wH5GQ-YF5RG`. No jogo, você importaria e ganharia uma mira. Aqui você recebe o conteúdo.

É o estilo 4 — o “Default static” do jogo. Tamanho 1,7, espessura 0, espaçamento −2. O contorno está ligado, em 0,5. O índice de cor é 5, o que significa que a cor vem dos canais e não de uma predefinição, e esses canais são 0, 255, 0. O alfa está ligado, em 255. E um detalhe que você não ia procurar: `cl_fixedcrosshairgap` está em −9, bem longe do padrão, e numa mira estática ele faz diferença de verdade.

Agora mude alguma coisa. Coloque o índice de cor em 1 e a mira vira a predefinição verde. O código muda para outros vinte e cinco caracteres, e as dezessete configurações em que você não mexeu — incluindo o espaçamento fixo de −9 e as cinco partes do registro que ninguém explicou — continuam exatamente como estavam. Importe e você recebe a sua edição, não um reset.

Depois pegue a outra saída. O botão de comandos de console entrega vinte e uma linhas: `cl_crosshairstyle 4`, `cl_crosshairsize 1.7`, `cl_crosshairgap -2`, `cl_fixedcrosshairgap -9` e assim por diante. Texto puro, para um `autoexec.cfg`. Repare que o tamanho sai como `1.7` e não como `1.7000000001` — o valor no registro é o inteiro 17, e o decimal é feito a partir dele, e não o contrário.

Por fim, salve. Dê o nome “longa distância”, mude o tamanho para 3, salve isso como “perto” e coloque as duas lado a lado. A comparação mostra as duas imagens, os dois códigos e cada configuração em que elas diferem. Ela não diz qual é melhor, porque ninguém consegue dizer.

O que isto não faz

Ela não diz qual mira é a melhor. Não existe nota, índice de precisão nem ranking em nenhum lugar desta página. Preferência de mira é subjetiva, e qualquer número associado a ela seria inventado.

Ela não guarda a mira de nenhum jogador. Nada de configurações de pro players, nada de galeria, nada de nomes. Esta ferramenta é para a sua própria mira. Uma camada de configurações de jogadores seria outro produto, com as próprias questões de obtenção, atualização e atribuição, e teria que conquistar o lugar dela separadamente.

A prévia é uma aproximação, não o jogo. A distância do centro fica num valor neutro, nada simula tiros ou movimento, e dois dos seis estilos não são desenhados. A seção acima explica exatamente o que isso significa.

Ela não consegue conferir se um código é o que você quer. Ela confere se um código está *bem formado*: o prefixo certo, o formato certo, caracteres do alfabeto certo, uma magnitude que cabe em dezoito bytes e uma soma de verificação que bate com o conteúdo. Um código que passa nas cinco é um registro de mira de verdade. Se é uma mira de que você gosta não é uma pergunta que a aritmética responde.

O que um código pode carregar e o que você pode escolher são duas coisas diferentes, e esta página mantém as duas separadas. O registro tem espaço para um tamanho de 819,1 e para um alfa de divisão de 1,5. O jogo limita esse alfa a 1, o vizinho dele a um mínimo de 0,3 e o contorno a 3 — então esses são os intervalos que os controles usam, porque são os do jogo. Onde o jogo não declara limite nenhum, como no tamanho, na espessura e nos dois espaçamentos, os controles usam um intervalo do ToolGuild e a página diz de quem ele é.

Um valor importado fora desses intervalos é mantido, não corrigido. Ele aparece, recebe nome, vai para tudo o que você exportar, e a página avisa que ele está fora do que o editor trabalha. O que os intervalos controlam é o que os controles vão criar *de novo*.

Três dos seis estilos estão desativados no jogo hoje. Os estilos 0, 1 e 3 aparecem marcados como DISABLED na própria descrição da configuração no Counter-Strike 2, então esta página não os oferece. Um código que traga um deles continua sendo decodificado, continua sobrevivendo a uma edição e continua sendo exportado sem alteração — ele só é identificado pelo que é, em vez de aparecer como uma escolha comum. Os estilos 6 e 7 cabem no registro e o jogo não descreve nenhum dos dois; um código que traga um deles é informado como não reconhecido, em vez de ganhar um nome inventado pelo ToolGuild.

Os nomes dos estilos vêm do jogo, e dois se repetem. O Counter-Strike 2 chama tanto o 0 quanto o 2 de “Default”, e tanto o 1 quanto o 4 de “Default static”. Isso é fiel, não arrumado, e é por isso que o número sempre aparece ao lado do nome. Uma versão anterior desta página usava os nomes da época do CS:GO — Classic, Classic dynamic, Classic static — e os apresentava como atuais; não é assim que o jogo chama essas configurações hoje.

Estes fatos vêm da comunidade, e a página diz isso. Nenhuma publicação do formato pela Valve foi encontrada nas fontes oficiais consultadas, então a linha de origem diz “Da comunidade” e o nível de verificação é 1. É a identificação honesta, não um aviso colado depois — e o código que esta página gera você pode conferir em uns vinte segundos, importando e olhando.

De onde vêm estes dados

Como o ToolGuild verifica o que publica

Relatar um problema com esta ferramenta

Calculado pelo motor cs2/crosshair do ToolGuild, versão 1.0.0, com o conjunto de dados crosshair-rules, versão 1.

Perguntas frequentes

Como eu uso um código de mira do CS2? No jogo, abra as configurações, entre na parte do jogo e depois na seção da mira, e use a opção de compartilhar ou importar. Cole o código e importe. Nesta página, você cola no campo de importação e recebe o conteúdo dele, e não só o efeito.

Por que os códigos de mira do CS2 ainda começam com CSGO? Começam mesmo, e o ToolGuild conferiu em vez de supor: códigos publicados como miras atuais do Counter-Strike 2 trazem esse prefixo e são decodificados corretamente, incluindo as duas configurações que só existem no Counter-Strike 2. O prefixo faz parte do formato, não diz nada sobre para qual jogo ele é.

O meu código aparece como inválido — o que isso significa? Esta página dá o motivo específico. Um prefixo errado ou o número errado de caracteres significa que nunca foi um código de mira. Um caractere que o alfabeto não tem — I maiúsculo, l ou g minúsculos, um 0 ou um 1 — geralmente significa que um caractere foi lido errado na hora de copiar, e a página diz qual. Uma falha na soma de verificação significa que o código tem o formato certo, mas o conteúdo não bate com o próprio byte de integridade, que é o que um único caractere digitado errado provoca. Nada é consertado: um código consertado seria a mira de outra pessoa.

Posso pegar os comandos de console em vez de um código? Pode. As vinte e uma linhas, em texto puro, para colar num arquivo de configuração. É texto e só texto — o ToolGuild não entrega a ninguém um arquivo para executar.

Editar um código apaga as configurações que esta página não mostra? Não, e é com isso que esta página tem mais cuidado. Tudo o que está no registro sobrevive a uma edição, inclusive as partes que ninguém explicou. Importe um código, mude uma coisa, exporte, e as outras vinte configurações mais as cinco regiões sem explicação ficam idênticas byte por byte.

A prévia mostra exatamente o que eu vou ver no jogo? Não, e ela não diz que mostra. Ela desenha as suas configurações com fidelidade — comprimento, espessura, espaçamento, ponto, formato de T, contorno, cor, alfa — numa altura de tela, com a distância do centro fixa. No jogo, essa distância varia com a imprecisão da sua arma nos estilos dinâmicos.

O que é cl_fixedcrosshairgap? Um valor de espaçamento à parte que o registro carrega junto com o normal. É uma das configurações que mais ficam num número que alguém copiou sem perceber, e é exatamente por isso que esta página mostra todos os valores, e não só os que você está ajustando.

Qual é a melhor mira do CS2? Não existe, e qualquer página que dê um número para isso inventou o número. O que ajuda é ver o que você tem, mudar uma coisa de cada vez e comparar duas das suas lado a lado — que é para isso que esta página existe.

As minhas miras salvas são enviadas para algum lugar? Não. Elas ficam neste navegador, não existe conta por trás delas, e “Recomeçar” apaga todas. Os nomes são seus; o ToolGuild nunca os trata como fatos sobre o jogo.

O ToolGuild não tem vínculo com nenhuma publicadora de games, nem é endossado ou patrocinado por ela. Os nomes dos jogos são usados apenas para identificar o jogo de que cada ferramenta trata.

ToolGuildA camada de respostas interativas para games