RNGdle

Como o RNGdle funciona

Três formas de sortear. Um catálogo completo de badges escondido nos números. Um total de EP honesto.

As regras

  1. Sorteio livre — Prática ilimitada, gerada pela aleatoriedade criptográfica do navegador (amostragem por rejeição, sem viés de módulo) misturada ao tempo dos movimentos do seu ponteiro. Um em cada 100.000.000 sorteios atinge o jackpot máximo: exatamente 1.000.000.
  2. Diário — A cada meia-noite UTC, um novo número compartilhado entre 0 e 1.000.000 entra no ar, gerado a partir da data. É o mesmo para todos os jogadores da Terra, com uma revelação por dia.
  3. Oficial — Jogadores conectados recebem um sorteio pessoal gerado pelo servidor, um por pessoa por dia, que conta para sua sequência e para a classificação.
  4. Todo sorteio é comparado com o catálogo completo de badges: cada característica correspondente rende um badge.
  5. O EP do seu sorteio é a soma do EP dos seus badges, e o total cai em um dos oito níveis de raridade, de Trash a Divine.
  6. Compartilhe seu resultado sem spoiler: o texto mostra quadrados de características e nomes de badges, nunca a análise.

EP — Energy Points

EP é a moeda do jogo. Cada badge tem um valor fixo de EP ajustado à raridade da sua característica — um número par comum vale pouco, enquanto um palíndromo de seis dígitos pode valer milhares.

roll EP = Σ badge EP

Trash < 170 < Common < 305 < Uncommon < 800
< Rare < 1,015 < Epic < 1,225 < Anomaly
< 2,230 < Mythic < 5,265 < Divine

O mesmo motor de badges funciona em todos os modos: sorteios livres, o número diário e o sorteio oficial do servidor produzem EP idêntico para números idênticos. O que você vê em casa é exatamente o que a classificação registra.

Sorteios oficiais são pessoais: o servidor deriva seu número de mulberry32(hash(SESSION_SECRET : UTCdate : userId)), de forma determinística e verificável, mas impossível de prever. Um sorteio por pessoa por dia; o banco de dados impõe o limite. Sortear em dias UTC consecutivos aumenta sua sequência.

A semente diária

seed   = hash("rngdle-" + YYYYMMDD)
number = floor(mulberry32(seed) * 1_000_001)

A data UTC se torna uma semente pública. mulberry32 é um PRNG pequeno e totalmente determinístico: com a mesma semente de 32 bits, produz o mesmo fluxo em qualquer dispositivo para sempre. O sorteio diário não precisa de servidor e pode ser verificado por qualquer pessoa.

Pontuação em detalhes (páginas de números)

Além do jogo de badges, cada página de número tem uma pontuação de raridade baseada na teoria da informação. Se uma característica aparece em c dos 1.000.001 números, ela vale -log2(c / 1.000.001) bits, limitada a 20. As características são ordenadas por bits e somadas com redução de 0,5 a cada característica adicional: a melhor conta inteira, a segunda pela metade, a terceira por um quarto, e assim por diante.

Cada número também tem uma soma de dígitos, pontuada pela raridade dessa soma no intervalo — portanto nenhum sorteio é realmente zero. As contagens são exatas: analisamos todos os números durante o build.

Níveis de raridade (pontuação detalhada)

Os sete níveis abaixo classificam a pontuação baseada em teoria da informação usada nas páginas de números. O jogo da página inicial usa sua própria escala de EP com oito níveis, calibrada pelo mesmo levantamento exaustivo.

NívelPontuaçãoO que significa
Trash≤ 4,2Os ~1% inferiores de todos os sorteios. Um número realmente esquecível.
Common≥ 6Um número comum. Nada para contar em casa.
Uncommon≥ 6,9Um pequeno brilho. Melhor que cerca de metade de todos os números.
Rare≥ 7,8Nos ~28% superiores. Agora ficou interessante.
Epic≥ 9,3Nos ~12% superiores. Dá vontade de fazer uma captura.
Anomaly≥ 12,6Nos ~4% superiores. A máquina piscou.
Mythic—No ~1% superior. Conte para todo mundo imediatamente.

Todas as características, com contagens exatas

De 1.000.001 números, começando pelos mais raros. A soma dos dígitos é pontuada separadamente para cada soma.

CaracterísticaContagem1 emSignificado
Número famoso1283.333Um número que ganhou nome na internet ou na história.
Potência de dois2050.0002 elevado a um expoente, como 65536 = 2¹⁶.
Sequência crescente2245.455Cada dígito é exatamente um maior que o anterior, como 123456.
Sequência decrescente2638.462Cada dígito é exatamente um menor que o anterior, como 654321.
Número de Fibonacci3033.333Faz parte da sequência de Fibonacci.
Todos os dígitos iguais4522.222Cada dígito é idêntico, como em 777777.
Cubo perfeito1019.901Um inteiro elevado ao cubo, como 91125 = 45³.
Padrão ABAB1805.556Dois dígitos se alternam, como 1212 ou 565656.
Sequência monstruosa1815.525Cinco ou mais dígitos iguais em sequência.
Padrão ABCABC9001.111Um bloco de três dígitos repetido duas vezes, como 456456.
Número redondo1.0001.000Um múltiplo exato de 1.000.
Quadrado perfeito1.001999Um inteiro multiplicado por si mesmo, como 729 = 27².
Número triangular1.414707Conta os pontos de um triângulo: 1, 3, 6, 10, …
Sequência ascendente1.865536Contém 4 ou mais dígitos subindo de um em um, como 883456.
Sequência descendente1.962510Contém 4 ou mais dígitos descendo de um em um, como 965432.
Palíndromo1.989503Lê-se da mesma forma nos dois sentidos.
Quadra de dígitos2.520397Quatro dígitos iguais em sequência.
Duas cifras distintas4.537220Formado exatamente por dois dígitos diferentes.
Trinca de dígitos33.21930Três dígitos iguais em sequência.
Ímpar/par alternados34.87529Dígitos ímpares e pares se alternam rigorosamente.
Número primo78.49813Divisível apenas por 1 e por si mesmo.
Número de Harshad95.42810Divisível pela soma dos próprios dígitos.
Zigue-zague136.4257Os dígitos alternam rigorosamente entre subir e descer.
Número feliz143.0717A soma repetida dos quadrados dos dígitos chega a 1.
Todos os dígitos únicos167.8326Nenhum dígito se repete.
Semiprimo210.0355Produto de exatamente dois números primos.
Primeiro < último399.9963O primeiro dígito é menor que o último.
Sem zeros597.8702Não contém nenhum dígito zero.

Números nomeados (42, 666, 1337, …) contam como únicos: 1 em 1.000.001.

Perguntas frequentes

Como o número diário é escolhido?

O número é floor(mulberry32(hash("rngdle-YYYYMMDD")) * 1.000.001), usando a data UTC. Ele é determinístico: todos recebem o mesmo número e qualquer pessoa pode reproduzi-lo.

Como a pontuação de raridade é calculada?

Cada característica contribui com -log2(count / 1.000.001) bits, limitado a 20. As características são ordenadas por bits e somadas com redução de 0,5 para cada característica adicional.

Quais são os níveis de raridade?

O jogo classifica o EP total dos badges em oito níveis de Trash a Divine, com limites calculados a partir da distribuição exata de EP de todos os 1.000.001 números. As páginas de números também usam uma pontuação de teoria da informação com sete níveis.

Quer ir mais fundo? Explore a biblioteca de padrões — 14 padrões com exemplos e estatísticas.