DEMOSTRABLEMENTE JUSTO

RAFFLESJUEGOSRULETACRASHJACKPOT

La forma de determinar el ganador de un raffle depende de 3 variables:

  • Semilla del servidor
  • Número total de tickets
  • SNúmero individual de cada ticket

Primero, se ordenan todas las compras de los usuarios cronológicamente, luego se genera una lista de tickets. Por ejemplo, si un usuario A compra 1 entrada a las 14:01, un usuario B compra 5 a las 14:03, y usuario C compra 3 a las 14:05, se generaría una lista de tickets así:

UsuarioTicket #
Usuario A1
Usuario B2
Usuario B3
Usuario B4
Usuario B5
Usuario B6
Usuario C7
Usuario C8
Usuario C9

Con esta lista, para cada ticket se genera un número aleatorio entre 1 y 100.000 usando la semilla del raffle, el número total de tickets, y el número individual de cada ticket:

UsuarioTicket #Roll
Usuario A170.257
Usuario B253.996
Usuario B392.611
Usuario B457.496
Usuario B535.002
Usuario B676.366
Usuario C720.997
Usuario C893.563
Usuario C924.399
Ejemplo de semilla: macaco
Tickets totales: 9

Gana el ticket con el roll más alto. En este caso, el ticket #8 del usuario C sería el ganador. En caso de empate, repetimos el proceso con los tickets que hayan empatado añadiendo :tie:1, :tie:2, etc. al final de la semilla para generar un desempate.

Para los sorteos finalizados antes del día 22 de enero de 2025, el funcionamiento era diferente. Al igual que ahora, se ordenaban las compras de los usuarios cronológicamente, pero en lugar de generar un número aleatorio para cada ticket, se generaba un número entre 1 y el número total de tickets, en este caso se habría generado un número entre 1 y 9. El número de ticket que hubiera coincidido con este número habría sido el ganador.