Tiradas aleatorias

Todos los juegos de dados reciben la misma acusación, casi siempre justo después de un mal turno: los dados están trucados. No lo están. Esta es la respuesta larga.

Lanza el servidor, no tu juego

Todos los dados de Portentum se lanzan en nuestros servidores. Tu juego nunca genera un número por su cuenta. Pide una batalla, recibe los resultados y los anima. No hay nada que parchear en tu máquina, ni en la de tu rival.

Todas las caras son igual de probables

Cada dado es un dado de seis caras normal y corriente. Un 1 es exactamente igual de probable que un 6, en cada tirada y para cada jugador.

No los ponderamos. No hay bonus silencioso para un tablero que va perdiendo, ni castigo por una racha de victorias, ni mecánica de remontada escondida en los números. Tu equipo, tu historial, tu rival y lo mal que vaya el combate no cambian nada. Una tirada no sabe nada de la partida en la que está.

Las rachas son parte del juego limpio

Los dados justos se agrupan. Cada turno caen dos dados y un combate puede durar mucho, así que una racha de la misma cara es normal. Le pasa a todo el mundo, casi siempre en el peor momento posible.

El error está en la intuición de que lo aleatorio debería verse repartido por igual. Unos dados que nunca se agruparan serían los trucados.

De dónde salen los números

La mayoría del software lanza dados con el generador de números aleatorios que trae su lenguaje de programación. Son rápidos y valen perfectamente para barajar una lista de reproducción, pero si observas uno el tiempo suficiente puedes deducir qué dirá después. Portentum usa en su lugar un generador criptográfico, la misma clase de herramienta que protege las contraseñas.

Ese generador necesita una semilla, y ahí es donde la cosa se pone rara. Una vez por minuto nuestro servidor toma un número nuevo de drand, una baliza pública de aleatoriedad que gestiona la League of Entropy: más de una docena de organizaciones independientes repartidas por el mundo, entre ellas varias universidades, la Ethereum Foundation, Protocol Labs y Cloudflare. Cada tres segundos producen juntas un número que ningún miembro puede predecir ni dirigir por su cuenta, y lo firman para que cualquiera pueda comprobar que es auténtico. Nuestro servidor comprueba esa firma antes de fiarse del número.

Cloudflare genera su parte de ese número apuntando una cámara a una pared de lámparas de lava en su vestíbulo de San Francisco y leyendo el caos en los píxeles. Así que sí, algo de esa cera acaba en tus dados.

Como la baliza es pública, nunca la usamos sola. Cualquiera puede leer el mismo número que acabamos de leer, y un dado con esa única semilla sería un dado que cualquiera podría predecir. Se mezcla con aleatoriedad secreta generada en nuestras propias máquinas. La mitad pública garantiza que no nos hemos inventado la semilla por nuestra cuenta. La mitad secreta es lo que hace que el resultado sea imposible de conocer de antemano.

Los mismos dados en todo lo demás

Ese mismo generador decide también qué te ofrece la tienda, qué sale de un sobre de cartas y contra qué rival te toca jugar. Todo sale de una única fuente que funciona igual.

Míralo en acción

Ya sabes de dónde salen los números. Dados y activadores explica qué hacen tus críptidos con ellos.