Roleta Aleatória de Escolha

Cole seus nomes, gire a roleta e receba um vencedor inquestionável sorteado pelo gerador criptográfico do seu navegador.

A roleta gira localmente: seus nomes nunca saem da página e os vencedores vêm da entropia do próprio navegador.

—
Histórico de vencedores

    Ainda sem giros — o vencedor de cada rodada aparece aqui.

    Como funciona

    Cada linha não vazia vira um setor de uma roleta desenhada em canvas, colorida por uma paleta derivada do tom de destaque do site. Ao tocar em Girar, a ferramenta primeiro sorteia o vencedor de forma criptográfica, calcula o ângulo exato de parada que deixa esse setor sob o ponteiro do topo e então roda a animação por cerca de 3,5 segundos — para que o resultado pare conquistado, não apenas anunciado.

    A matemática dos arcos
    Com n opções, cada setor cobre 2π/n radianos. O ponteiro fica às 12 em ponto (−π/2 nas coordenadas do canvas) e o setor i ocupa o arco [i·2π/n, (i+1)·2π/n) rotacionado pelo ângulo atual da roleta. Para cair no vencedor w, a roleta para em −π/2 − (w + ½)·2π/n mais três a cinco voltas completas de efeito: a animação é determinística depois do sorteio e o visual nunca discorda do resultado.
    Por que easing cubic ease-out
    O giro segue 1 − (1 − t)³: largada rápida, cauda longa de desaceleração. Imita uma roleta real perdendo impulso por atrito e mantém o último segundo lento o bastante para todos verem o ponteiro parar em vez de apertar os olhos para um borrão. A duração total é fixa em 3,5 s haja quantas opções houver — a atenção da turma não escapa.
    Justiça: criptografia, não pseudoaleatório com semente
    Os vencedores vêm de crypto.getRandomValues — o pool de entropia do sistema operacional — com escolha uniforme direta sobre a contagem de opções (no máximo 30 setores contra um sorteio de 32 bits não introduz viés relevante). Não há semente para inspecionar, nem sequência repetível, nem servidor no meio: o resultado é genuinamente imprevisível no instante em que você gira.

    Perguntas frequentes

    O resultado é realmente aleatório?

    Sim — e de propósito. O setor vencedor é sorteado com crypto.getRandomValues, o gerador criptograficamente seguro do navegador, então o resultado não pode ser previsto, semeado nem reproduzido. Também não há pesos escondidos: cada linha digitada tem exatamente a mesma chance.

    Posso dar um pedaço maior a algumas opções?

    A roleta é rigorosamente uma fatia por opção, mas há um truque simples: repita a linha. Escreva "Time Vermelho" duas vezes e ela ganha dois setores, ou seja, o dobro de chance. As repetições ficam visíveis e fáceis de contar na lista.

    Funciona em sala de aula ou festa?

    É exatamente para isso: a página inteira roda offline, então funciona no Wi-Fi do local, no projetor ou sem internet nenhuma. A roleta grande e o banner do vencedor dão para ler do fundo da sala, e o histórico registra de forma transparente todos os sorteios da sessão.

    Por que o limite de 30 opções?

    Duas razões honestas. Com 30 fatias cada setor tem só 12°, menos do que etiquetas legíveis permitem, e já fica difícil ver onde o ponteiro parou. E legibilidade também é justiça: se ninguém vê qual setor ganhou, o sorteio perde o sentido.

    Algo é enviado para um servidor?

    Não. Os nomes nunca saem da página: a roleta é desenhada num canvas local e a aleatoriedade vem do próprio navegador. O histórico vive só ali e some ao recarregar ou apertar Redefinir.