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.
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
Cor
Verde
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.
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
Detalhes da verificação
- Método
- Da comunidade · 31 de ago. de 2026
- Checagem cruzada
- O formato do código é confirmado por quatro implementações escritas de forma independente e legíveis publicamente — em TypeScript (MIT), C# (sem licença informada), JavaScript (GPL-3.0) e Python (MIT), de quatro autores diferentes — e depois foi conferido de forma executável contra 131 códigos reais. 129 passaram na própria soma de verificação e se recodificaram neles mesmos caractere por caractere; os dois que não passaram ficam guardados como casos de teste do que precisa ser recusado. Vinte foram publicados, junto com a própria lista de valores de comandos de console, por uma fonte que não gerou o código, e todos os campos batem nos vinte. As duas larguras de campo em que as implementações discordavam ficam registradas separadamente, porque as evidências delas não têm o mesmo peso. O campo de **tamanho** tem treze bits, com confiança alta: duas implementações o leem assim, e os únicos três códigos do corpus que usam o segundo byte de tamanho foram todos publicados como miras que ocupam a tela de propósito, que com treze bits se leem como 255, 100 e 100, e com oito bits como um grupo pouco plausível entre 23,2 e 24,6. A **distância da divisão** fica registrada com confiança baixa e só reivindica os três bits de baixo: duas implementações somam mais quatro bits a ela e uma não, exatamente um código real em 131 usa algum deles, e nenhuma fonte publica a distância da divisão desse código — então esses bits são carregados como estado opaco em vez de receberem um significado. Os nomes e os status dos estilos, e os intervalos que os controles usam, vêm da própria tabela de ConVars do jogo, como transcrita por dois dumps mantidos de forma independente cujo texto bate ao pé da letra com quinze meses de diferença. Todas as linhas estão registradas como dados da comunidade, e é por isso que esta página tem nível de verificação 1, e não o nível que uma declaração oficial mereceria.
- Não usado
- Nenhuma declaração da Valve é citada, porque a checagem de pesquisa da fase 3B.6 não encontrou uma publicação da Valve sobre o formato do código nas fontes oficiais que consultou: o site oficial do Counter-Strike não publica documentação sobre mira nem sobre códigos de compartilhamento, a ajuda da Steam para o jogo não tem nenhuma, e a wiki da Valve Developer Community não respondeu a um pedido simples. É o resultado de uma busca, não uma afirmação de que essa declaração não existe em lugar nenhum. Nenhuma das três está registrada como fonte, porque nenhum fato registrado depende delas. Nada aqui vem de datamining, de conteúdo do jogo descompilado ou extraído, nem de nenhum banco de dados de configurações de jogadores — e nenhum código foi copiado de nenhuma das quatro implementações que o ToolGuild leu, só o conhecimento factual do protocolo que elas contêm, reescrito numa implementação original. Um relato não verificado sobre os intervalos dos próprios controles deslizantes do jogo foi encontrado e deliberadamente **não** foi registrado: um único comentário sem confirmação não é evidência, então, onde o jogo não declara limite, os controles usam um intervalo do ToolGuild identificado como tal. Nenhuma configuração de pro player, nenhuma galeria de miras e nenhum ranking de qualquer tipo é publicado, guardado ou planejado por esta ferramenta.
csgo-sharecode — share-code implementation (TypeScript, MIT)
Sustenta commands, share_code.format, share_code.split_distance_field_width · verificado em 31 de ago. de 2026
Share-code decoder (C#, no licence stated)
Sustenta share_code.format · verificado em 31 de ago. de 2026
cs2-crosshair — crosshair viewer and renderer (JavaScript, GPL-3.0)
Sustenta colours, commands, context.no_alpha_draws_additively, preview_scaling, share_code.format, share_code.size_field_width · verificado em 31 de ago. de 2026
csxhair — share-code implementation (Python, MIT)
Sustenta share_code.format, share_code.size_field_width · verificado em 3 de set. de 2026
CS2 ConVar dump — executable-derived metadata
Sustenta editor_ranges.engine_clamps, styles.names_and_statuses · verificado em 3 de set. de 2026
ArminC CS2 Cvars — cvarlist output
Sustenta editor_ranges.engine_clamps, styles.names_and_statuses · verificado em 3 de set. de 2026
Published crosshair codes with their console-command values
Sustenta commands, context.current_codes_carry_the_csgo_prefix, share_code.format, share_code.size_field_width, share_code.split_distance_field_width · verificado em 31 de ago. de 2026
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.