Existe uma frase que eu escrevi cedo na documentação de design e que hoje funciona como teste para praticamente toda decisão de sistema que envolve chance: "a interpretação científica da Ordem pode estar errada; a aritmética do servidor não pode." Comecei escrevendo isso como frase de lore bonita. Só depois entendi que ela também é uma restrição de engenharia — e restrição de engenharia custa trabalho de verdade, não só texto.

O problema que a promessa cria sozinha

Se eu prometo que as odds são públicas — base de aparição, modificadores, pity, contador, taxa efetiva, tudo visível — isso significa, sem exceção, que qualquer jogador dedicado pode calcular a taxa real dividindo confirmações por observações. Não existe meio-termo aqui: ou eu publico dados suficientes para a comunidade auditar a matemática, ou eu não publico e a promessa vira slogan vazio. Eu escolhi publicar, sabendo que isso significa que o segredo do sistema nunca pode morar no número — só pode morar no seed e na implementação do gerador aleatório, que é onde ele deveria morar mesmo.

Por que existem duas camadas de registro, e não uma só

O Registro da Ordem é global e permanente: primeira confirmação de cada espécie, autoria, número global de observações, estado científico, odds publicadas uma vez para todo mundo. O Caderno de Campo é por conta: o arco pessoal de cada jogador indo de Apócrifo para Catalogado, avistamentos próprios, contenções próprias, histórico próprio.

A razão de existirem dois, e não um só, é um problema que eu só enxerguei tarde: se existisse apenas um Registro global único, os jogadores mais dedicados catalogariam as cento e vinte espécies do beta na primeira semana, e todo jogador novo que entrasse depois encontraria um mundo cento por cento catalogado — o arco inteiro de descoberta, que é uma das razões de jogar, morreria no lançamento para qualquer pessoa que chegasse um mês atrasada. Separar as duas camadas resolve isso sem inventar mecânica nova: os dois termos já existiam no vocabulário do jogo, eu só não tinha percebido que precisavam ser separados até desenhar o fluxo de onboarding de um jogador que entra tarde.

O padrão estatístico que eu tive que aprender a usar direito

Publicar contagem bruta de eventos raros é enganoso sem contexto — se uma espécie tem três confirmações em cem observações, isso não é a mesma coisa que três confirmações em três observações, mesmo que o número "três" pareça igual nas duas telas. Por isso a auditoria expandida do Registro usa intervalo de Jeffreys de 95% (a fórmula técnica é Beta(k+0,5, n−k+0,5), apropriada justamente para eventos raros, onde métodos estatísticos mais simples se comportam mal). E uma espécie só sai do estado "não calibrado" depois de acumular pelo menos cinquenta confirmações naturais, com margem relativa estreita o suficiente e amostra posterior à versão atual da regra — se a base de chance mudar, a amostra antiga não conta mais para calibração.

Isso significa que, por um tempo, o próprio jogo vai admitir publicamente "eu ainda não tenho dado suficiente para confirmar essa taxa" — e eu decidi que isso é preferível a fingir confiança que eu não tenho.

O que fica fora da tela do dia a dia, de propósito

Nem tudo que eu publico entra na tela principal do Caderno de Campo — algumas coisas ficam numa camada de auditoria expandida, visível para quem procura, mas não empurrada para quem só quer jogar: participação agregada de jogadores com VIP, o intervalo estatístico completo sempre disponível, o estado "não calibrado" sinalizado mesmo para espécie já catalogada quando a amostra ainda é fina demais. E existe uma linha que eu escrevi como alerta explícito para mim mesmo, não só para o jogador: qualquer inferência que misture aparição com contenção é enganosa, porque a razão simples de confirmações dividida por observações não representa a base real quando pity, VIP, modificadores e mudanças de versão da regra estão todos operando ao mesmo tempo, sobrepostos. É fácil, olhando só pro número final, achar que a conta é simples. Não é, e fingir que é seria outro jeito de mentir com dado verdadeiro.

A tensão que eu decidi aceitar em vez de resolver

Existe uma consequência inevitável de publicar contagens cumulativas: a comunidade vai conseguir inferir a base real de qualquer jeito, com precisão crescente, só cruzando os números que eu já publico. Não existe meio de divulgar contagem exata e manter a base secreta ao mesmo tempo — as duas coisas se excluem matematicamente. Eu aceitei isso como parte do funcionamento do sistema, não como falha a consertar. O segredo nunca precisou morar na taxa. Precisa morar em como o gerador aleatório é implementado e semeado, que é o único lugar onde segredo realmente protege alguma coisa.

O que ainda não terminei

A conversão pública de contador quando a base de chance ou o teto de pity forem recalibrados um dia — o que precisa acontecer sem apagar progresso acumulado de ninguém — já tem fórmula fechada e publicada, mas nunca rodou em produção de verdade, com contadores reais de jogadores reais no meio. É o tipo de coisa que só se prova certa no dia em que eu precisar usá-la pra valer, e eu prefiro que vocês saibam que a fórmula existe e ainda não foi testada em fogo, do que deixar vocês acharem que já foi.