Ya sea para una partida de rol de última hora o para tomar una decisión binaria en el desarrollo de un proyecto, el azar es una herramienta fundamental en el laboratorio. Pero aquí no usamos dados de plástico; usamos geometría dinámica.
He diseñado este recurso para que sea algo más que un generador de números. Es un visor que transforma su estructura física (SVG) según el nodo de probabilidad que elijas: desde el tetraedro (D4) hasta el icosaedro (D20).
SELECCIONAR NODO (CARAS):
El ADN del Azar: ¿Cómo funciona?
Cuando pulsas el botón de “Iniciar Lanzamiento”, el sistema entra en un estado de “vibración” (blur y escala) que simula el movimiento del dado. Pero la magia real ocurre en la metamorfosis del visor.
Metamorfosis Geométrica vía SVG
En lugar de cargar imágenes diferentes para cada dado, este componente utiliza un único elemento <polygon> de SVG. Al cambiar de dado, el código de JRChub recalcula las coordenadas de los vértices y las aplica mediante una transición CSS suave.
Cada configuración de caras (D4, D6, D20) corresponde a un array de puntos X/Y en el plano digital.
Programando la Probabilidad
En el corazón de este trasteo hay una fórmula matemática simple pero efectiva de JavaScript. El sistema detecta cuántas caras tiene el nodo seleccionado y ejecuta la función:
// Cálculo del resultado final
const resultado = Math.floor(Math.random() * caras) + 1;
Dato para trasteadores: Aunque Math.random() es perfecto para juegos, si estuviéramos programando sistemas de alta seguridad o criptografía, usaríamos la API crypto.getRandomValues(), que ofrece una aleatoriedad mucho más profunda y difícil de predecir.
¿Por qué este diseño?
En este laboratorio creemos que las herramientas funcionales también deben ser estéticas. El uso del color Cian Eléctrico no es casualidad: es el código visual que hemos asignado a toda nuestra sección de Recursos, diferenciándola del azul de la Inteligencia Artificial o el verde del Taller DIY.
Conclusión
El azar es parte de la vida y del código. Con este visor geométrico, ya tienes una forma rápida y elegante de generar números aleatorios sin salir de tu navegador.
¿Qué dado es el que más utilizas en tus sesiones? Si necesitas algún polígono más complejo (como un D100), ¡cuéntanoslo en el Nodo de Telegram!
¡A trastear! 🚀🎲🦾