Como o Studcheck verifica uma conta Roblox
Este é o mecanismo inteiro, por escrito. É curto porque não há muito nele — e essa é a questão: quanto menos peças móveis uma ferramenta de verificação tem, menos ela pode errar com a sua conta.
O fluxo, passo a passo
Você envia <code>/verificar</code> ao bot. Ele responde com um botão que abre um endereço em <code>apis.roblox.com</code> — domínio do Roblox, não nosso.
O Roblox mostra uma tela de consentimento listando exatamente o que o Studcheck pede. Você aprova ou não. Se aprovar, o Roblox envia ao bot um código de curta duração, que o bot troca por um token no servidor e então pergunta ao Roblox quem você é.
Essa resposta — seu id, nome de usuário, nome de exibição e avatar — é o que fica armazenado, junto com seu id do Telegram. Nada mais passa entre os dois.
As duas permissões
O Studcheck pede os escopos <code>openid</code> e <code>profile</code>. Na tela do Roblox aparecem como <b>Ler id do usuário</b> e <b>Ler perfil do usuário</b>, ambos marcados como baixo risco pelo Roblox.
Nenhum deixa o bot agir como você. Ele não pode postar, trocar, gastar Robux, entrar em grupos, mudar configurações ou ler nada privado. Pode saber quem você é, e só.
O que o bot nunca vê
<b>Sua senha.</b> Você a digita no site do Roblox. Ela nunca chega até nós e não há campo para ela no bot.
<b>Seu cookie <code>.ROBLOSECURITY</code>.</b> É o token de sessão que permitiria agir como você. O OAuth existe justamente para que ferramentas nunca precisem dele.
<b>Nada que você não tenha aprovado.</b> O Roblox aplica os escopos do lado dele.
Por que é melhor que o código no perfil
O método antigo faz você colar um código na descrição do perfil para o bot ler. Funciona, mas ensina jogadores a colar textos desconhecidos no perfil — exatamente o hábito de que ladrões de conta dependem.
O OAuth prova isso ao Roblox, não a nós. O Roblox responde pela identidade diretamente e o bot nunca toca no seu perfil.
O estado assinado
Ao montar o link de login, o bot inclui um token assinado que amarra o pedido ao seu id do Telegram, válido por quinze minutos. A assinatura é conferida em tempo constante.
É esse detalhe que impede alguém de ligar a própria conta Roblox ao <em>seu</em> id do Telegram, ou de reaproveitar um link antigo.
Depois de verificar
Uma verificação é um instantâneo, então o bot reconfere. A cada hora ele pergunta ao Roblox se contas verificadas foram banidas e remove esses membros. Nomes são atualizados no <code>/quemsou</code>; o vínculo em si usa o id do Roblox, que não muda.
Envie <code>/desvincular</code> e o vínculo é apagado na hora. Sem espera e sem confirmação por e-mail, porque não temos seu e-mail.
O que é armazenado
Um registro por vínculo: seu id do Telegram, id do Roblox, nome de usuário, nome de exibição, URL do avatar e a data. A <a href="/privacy">página de privacidade</a> lista tudo.
Tokens de acesso não são guardados. O bot usa o token uma vez e descarta.
O que não prova
O OAuth prova que você controlava aquela conta no momento do login. Não prova que ela não foi vendida ou roubada desde então. Moderadores devem tratar isso como um sinal forte, não uma garantia — por isso existe a reconferência de hora em hora.
Se algo nesta descrição não bater com o comportamento do bot, é um bug, e queremos saber.