Cinco tiradas y dos escaleras.
Advertencia
Rod and Reef todavía no ha sido lanzado, y no se pueden mostrar videos ni GIFs de este sistema hasta que salga.
Resumen. En Rod and Reef, cada vez que el jugador lanza la caña el servidor resuelve cinco tiradas: la rareza del pez, la especie, la mutación, la variante lunar y el tamaño. Encima de ellas actúan la caña, el cebo, los amigos que pescan cerca, el bote desde el que se pesca, los multiplicadores temporales, un sistema de pity que garantiza ciertos resultados después de una racha mala y un empujón hacia las especies que piden las quests activas. Este artículo describe la versión 5 del sistema. La suerte es una suma de dos números, la caña y el cebo. Las probabilidades se leen de dos escaleras con interpolación lineal, una para la rareza y otra para el tamaño, y los techos de cada caña son un condicionamiento de la distribución y no un recorte. Los tres modificadores de rareza que vienen después conservan la forma de las rarezas altas, y su composición tiene una forma cerrada. Los umbrales de pity se derivan de la probabilidad natural, y un análisis de proceso de renovación reproduce al decimal una simulación de 400 000 lances. El tamaño usa una curva de potencia que separa lo común de lo excepcional. Y los precios de los cebos se derivaron para que cada cebo sea la mejor opción exactamente en su caña.
1. El problema
La versión 4 del sistema llegó con reportes de jugadores que, medidos, resultaron ciertos. Con el anzuelo vacío, cualquier caña sacaba un pez poco común uno de cada cinco lances. Una caña legendaria con cebo legendario seguía sacando peces comunes el 11.5% de las veces. La suerte de la caña movía solo el 0.1% de la probabilidad de lo común por punto, así que pasar de la caña gratis a la legendaria, que cuesta 100 000 monedas, subía el ingreso con el anzuelo vacío de 54 a 81 monedas por lance. La caña inicial sin cebo podía sacar un pez gigante. Y la economía de los cebos estaba rota: en la primera isla los cebos raros, épicos y legendarios perdían monedas en cada lance con cualquier caña, y en las islas 2 a 4 perdía monedas cualquier cebo con cualquier caña.
El objetivo de la versión 5 quedó en una frase: el jugador tiene que querer mejores cañas y mejores cebos, y no puede perder plata por usarlos.
2. Un lance, de principio a fin
Todo se resuelve en el servidor, en este orden:
- Se resuelve el nivel de la caña con el que tira el lance (las cañas de pago toman prestado el de la mejor caña normal que tenga el jugador) y el nivel del cebo.
- Cada categoría de pity que este lance califica suma uno a su contador.
- Tirada 1, rareza: escalera, techo, amigos, bote y multiplicador temporal, y después el muestreo.
- Tirada 2, especie: entre las especies de esa rareza en la isla actual, con el empujón de las quests.
- Tirada 3, mutación: normal, brillante o resplandeciente, excluyentes entre sí.
- Tirada 4, variante lunar: independiente de la anterior y solo de noche.
- Si algún contador de pity se llenó y forzarlo no empeora el resultado, se reemplaza la especie y la mutación.
- Se reinician los contadores cuyo objetivo coincide con lo que salió.
- Tirada 5, tamaño: escalera de tamaños, techo, y un peso dentro de la categoría con una curva de potencia, recortado al peso máximo de la caña.
Las siguientes secciones van por partes.
3. Suerte
La suerte de un lance es una suma:
Las cañas valen 0 (la inicial), 5, 15, 25, 35, 45, 55, 70 (legendaria) y 85 (secreta), y los cebos 0 (anzuelo vacío), 6, 13, 21, 30 y 40 (legendario). Es un solo número, y la tienda muestra las dos mitades para que el jugador las pueda sumar. La separación entre cebos no es arbitraria: con esos valores, cada cebo gana más que el anterior exactamente en la caña que se desbloquea a su lado, y con valores más juntos el cebo más barato ganaría en todas. Los precios se derivaron a partir de estos números (sección 10), así que cambiar uno obliga a volver a derivar el otro.
4. La escalera
4.1 Interpolación en el símplex
La rareza se lee de una tabla de filas, cada una con un valor de suerte y un vector de probabilidades sobre las seis rarezas. Algunas de sus filas:
| Suerte | Común | Poco común | Rara | Épica | Legendaria | Mítica |
|---|---|---|---|---|---|---|
| 0 | 92.0 | 7.0 | 1.0 | 0.0 | 0.0 | 0.0 |
| 25 | 73.0 | 21.0 | 5.0 | 0.95 | 0.05 | 0.0 |
| 55 | 41.5 | 36.0 | 16.5 | 5.3 | 0.7 | 0.0 |
| 70 | 26.0 | 39.5 | 24.5 | 8.8 | 1.0 | 0.2 |
| 110 | 5.0 | 27.5 | 39.5 | 21.5 | 5.0 | 1.5 |
| 125 | 3.0 | 21.5 | 41.0 | 25.5 | 6.8 | 2.2 |
Entre dos filas se interpola en línea recta:
y fuera de la tabla se usa la fila del extremo. Cada fila es un punto del símplex de probabilidad , y el símplex es convexo [1], así que una combinación convexa de dos filas válidas es una fila válida. La interpolación nunca necesita renormalizar.
Hay una segunda escalera igual para el tamaño, con seis categorías de diminuto a legendario. Los números están escritos a mano en filas de seis columnas, que es justo donde un error pasa desapercibido, así que el módulo revisa su propia aritmética al cargar: cada fila tiene que sumar 100 con una tolerancia de 0.01, la suerte tiene que crecer de fila en fila, y cada nivel de caña tiene que tener tanto suerte como techo. Si algo falla, avisa fuerte pero no detiene el juego, porque una fila que se pasa por una décima sigue funcionando, solo que ya no significa lo que dice.
4.2 Techos como condicionamiento
Cada caña tiene la mejor rareza y el tamaño más grande que puede sacar con el anzuelo vacío. Las cañas básicas llegan hasta rara y mediano, la legendaria hasta épica y gigante, la secreta hasta legendaria en las dos escalas. Cualquier cebo sube los dos techos un escalón, y el cebo legendario sube la rareza dos. Así, con el índice del techo,
y la distribución se corta en y se renormaliza:
Esto es la distribución condicionada, . No es un recorte que mande todo lo que sobra al techo. Con un recorte, una caña limitada a épica sumaría a sus épicos toda la masa de legendarios y míticos. Con el condicionamiento, esa masa se reparte en proporción entre todas las rarezas permitidas.
La regla de diseño que sale de ahí es que la caña decide qué puede picar y el cebo decide cada cuánto pican los buenos, y ninguno puede reemplazar al otro. Algunos casos concretos:
- Caña inicial, anzuelo vacío (, techo rara): 92% común, 7% poco común, 1% rara.
- Caña legendaria, anzuelo vacío (, techo épica): 26.3% común, 40.0% poco común, 24.8% rara y 8.9% épica. Sus legendarios y míticos solo llegan con cebo.
- Caña legendaria con cebo legendario (, techo mítica): 5% común, 5% legendaria y 1.5% mítica.
- Caña inicial con cebo legendario (, techo legendaria): 57.8% común y solo 0.3% legendaria. Mucha suerte sin dónde usarla.
Las combinaciones son 9 cañas por 7 cebos, 63 en total, y el resultado de cada una se calcula la primera vez que se pide, se guarda y se congela, porque se pide en cada lance y nunca cambia. Congelarla impide que los modificadores de la sección siguiente escriban sobre la tabla compartida.
5. Tres empujones que conservan la forma
Después de la escalera, tres modificadores mueven la distribución de rarezas, en este orden.
Los amigos de Roblox que pescan a menos de 100 studs mueven, cada uno, el 3% de la masa de lo común hacia las rarezas altas, hasta un máximo de 4 amigos. La lista de amigos se pide una vez al entrar al juego, porque esa llamada a la web bloquea, y en cada lance solo se cuentan los que están cerca. Con amigos, , y la masa de todo lo que no es común:
El bote hace lo mismo con su propia fracción , entre 1% y 12% según el bote. El multiplicador temporal, que se gana por ejemplo como premio de inicio de sesión diario, multiplica todas las rarezas altas por y lo paga lo común:
El mínimo existe porque lo común paga el empujón y por lo tanto lo limita: cuando las rarezas altas ya llenan toda la fila no hay nada más que comprar, y sin el mínimo lo común quedaría negativo.
Los tres tienen algo en común: multiplican todas las rarezas que no son comunes por el mismo factor. Por eso su composición también lo hace, y tiene una forma cerrada. Si es la masa alta de partida,
y el resultado final es
De esta forma salen tres propiedades que importan para el diseño. Una rareza en cero sigue en cero, así que ningún empujón puede abrir algo que el techo cerró. Las rarezas altas conservan sus proporciones entre sí, así que un multiplicador de 2 no favorece a lo mítico por encima de lo poco común. Y amigos y bote conmutan, porque sus factores y se multiplican. Un ejemplo: la caña inicial con cebo común tiene 88.25% común y 9.87% poco común. Con dos amigos cerca, un bote del 5% y un multiplicador de 2, el factor es , y queda en 57.6% común, 35.6% poco común, 6.3% rara y 0.5% épica.
La muestra final usa el método de la transformada inversa sobre la suma acumulada [2]. Se toma uniforme en y se recorren las rarezas en un orden fijo, de común a secreta, devolviendo la primera cuya suma acumulada alcanza . El orden tiene que ser fijo porque el de una tabla de Luau no lo es. En la tirada de tamaño, si el redondeo deja la suma un pelo por debajo de 1, el resultado cae en la última categoría con probabilidad mayor que cero y nunca en una que la tabla tiene en cero.
6. La especie y las quests
La tirada 2 elige una especie entre las de esa rareza en la isla actual. Si una quest activa pide una especie, esa especie cuenta doble en la elección. Con especies en el grupo y una pedida,
que convierte un grupo de dos especies de 50% a 67% y uno de tres de 33% a 50%. Se nota en una sesión, pero sigue lejos de saltarse la búsqueda. Encima hay una garantía: cada vez que la tirada cae en la rareza correcta y sale otra especie cuenta como un fallo, y después de tres fallos seguidos la siguiente es la de la quest. Llegar a la garantía tiene probabilidad
que es 1 en 27 con dos especies y 1 en 8 con tres. La mayoría de los jugadores no llega nunca. Está para la cola de mala suerte, el jugador que saca la rareza correcta una y otra vez y ve salir el pez equivocado.
El empujón nunca toca la tirada 1. Una especie legendaria en una caña que no puede sacar legendarios sigue igual de imposible, porque el empujón solo decide en qué especie se convierte una rareza que ya salió. Tampoco toca el peso, la mutación ni la variante lunar. Y solo reciben empujón los objetivos que este lance podría cumplir: un pez de más peso del que la caña puede sacar, un pez lunar de día o uno resplandeciente con un equipo sin probabilidad de resplandor no reciben nada. Los contadores se guardan en el perfil del jugador, así que salir del juego no los pierde.
7. Mutación y variante lunar
La tirada 3 es una sola elección entre tres resultados. Con uniforme, sale resplandeciente si , brillante si y normal en el resto, donde y dependen del nivel de la caña: la inicial tiene 1.5% de brillante y 0.3% de resplandeciente, para que una mutación durante el tutorial sea una sorpresa de verdad, y la legendaria tiene 21% y 11%. Si la especie no tiene una versión de la mutación que salió, el pez queda normal y no se vuelve a tirar. Ciertos cebos de pago reemplazan por completo las probabilidades de la caña con las suyas.
La tirada 4 es independiente: un evento de Bernoulli con probabilidad , que también depende de la caña, y que solo puede salir entre las 9 de la noche y las 5 de la mañana del reloj del juego. Un pez puede ser lunar y brillante a la vez. Ninguna de estas tiradas recibe los empujones de suerte de la sección 5. Lo que sí hacen es multiplicar el precio de venta: 1.4 la brillante, 1.8 la resplandeciente y 2 la lunar.
8. El tamaño
8.1 Una curva para los kilos
La tirada 5 elige una categoría de tamaño con la segunda escalera y su techo. Dentro de la categoría, el peso es uniforme entre dos fracciones del rango de la especie. Las fracciones vienen del documento de diseño, , pero no se aplican en línea recta sino elevadas a una potencia:
La razón es que los rangos de las especies son enormes. Un arenque va de 3 a 62 kg, y en línea recta la categoría mediana cubría de 21 a 32 kg. Mediano es el resultado más frecuente con el cebo más barato del juego, así que el centro de la distribución quedaba en un tercio del máximo de la especie: no existía un pez normal, los nombres de las categorías no describían lo que devolvían, y un jugador del tutorial con caña gratis y sin cebo sacaba un pez poco común de 30 kg más o menos uno de cada veinte lances. Con el mismo arenque queda así:
| Categoría | Kilos |
|---|---|
| Diminuto | 3 a 4.7 |
| Pequeño | 4.7 a 9.8 |
| Mediano | 9.8 a 19.9 |
| Grande | 19.9 a 34.0 |
| Gigante | 34.0 a 51.8 |
| Legendario | 51.8 a 62 |
Las probabilidades de cada categoría no cambian. Lo único que se mueve es qué número de kilos lleva qué nombre. Pero como las categorías altas ahora cubren la mayor parte del rango, la distancia entre el peor equipo y el mejor se duplica: el arenque promedio con el anzuelo vacío bajó de 17.9 a 10.0 kg mientras que con cebo legendario sigue en 29.6 kg, así que la diferencia pasó de 5.0 a 10.7 veces. Eso también es lo que hace que valga la pena comprar cebo. Con se recupera exactamente la versión lineal.
8.2 Una sola tabla
Tres funciones usan esas fracciones: la que genera el peso de un pez de caña, la que genera el de un pez de red y la que clasifica un peso que ya existe para calcular su precio y su experiencia. Las tres leen la misma tabla, calculada una vez al cargar. Antes eran copias, y un pez que salía en una categoría y se cobraba como otra era exactamente el bug que esa duplicación producía. El peso final se recorta al máximo de la caña, de modo que el jugador siempre saca el pez pero una caña baja no puede sacar los ejemplares más pesados, y el recorte se hace antes de guardar, para que el peso que se muestra, el que se guarda, el precio y el progreso de las quests coincidan.
9. Pity
9.1 El mecanismo
Hay 14 categorías de pity, cada una con un objetivo (por ejemplo “un común brillante” o “un mítico”), requisitos de cebo, de caña y a veces de hora, y un umbral . Cada lance que cumple los requisitos de una categoría suma uno a su contador, antes de las tiradas. Si el contador llega a , el resultado de ese lance se reemplaza por el objetivo. Y cualquier captura que coincida con el objetivo, natural o forzada, reinicia el contador.
9.2 Un proceso de renovación
Sea la probabilidad natural del objetivo por lance. Cada ciclo entre dos reinicios termina con una captura natural o con el pity, así que su largo es , con geométrica de parámetro [4]. Su esperanza es
y por el teorema de renovación con recompensa [3], la tasa a largo plazo a la que llega el objetivo es
mientras que la fracción de objetivos que entrega el pity, y no la tirada natural, es la probabilidad de que un ciclo llegue al umbral, .
9.3 El pity estaba ganando
Los umbrales de antes se habían elegido a ojo, y el análisis muestra lo que pasaba. La categoría de común brillante tenía con una probabilidad natural de 1 en 93:
o sea 5.53% de los lances, y el pity entregaba el 81% de ellos. Una simulación de 400 000 lances con la caña inicial y cebo común midió exactamente 5.53%: 1.08% de la tirada natural y 4.51% del pity. Ese era el reporte de “las mutaciones se sienten comunes con equipo básico”, y explicaba por qué un ajuste anterior nunca le llegó a nadie. La probabilidad de mutación de la caña inicial se había bajado a propósito, para que una mutación en el tutorial fuera una sorpresa, y el pity la devolvía multiplicada por cinco. Las cañas no podían vender su propia estadística porque el pity pujaba más alto.
9.4 Una regla para los umbrales
Ahora cada umbral sale de una regla:
con medido en el peor equipo que todavía califica para la categoría. Con esa regla, , así que
El pity suma alrededor de un 9% sobre la tasa natural y entrega un 8% de los objetivos. Es un piso debajo de una mala racha y no la fuente principal. Para el común brillante, y , y la tasa queda en 1.43% contra 1.32% natural. Cada categoría guarda en un comentario la probabilidad natural de la que salió su umbral, así que volver a derivarlos después de un cambio en las escaleras es aritmética y no gusto. Una categoría queda fuera de la regla a propósito: la del mítico resplandeciente y lunar, con una probabilidad natural de 1 en 6734, pediría 16 835 lances nocturnos, así que mantiene un umbral de 300 y en ella el contador es el mecanismo y la tirada natural es el bono.
9.5 Nunca empeorar
Un contador también se llena con equipo muy por encima de su objetivo, porque el común brillante cuenta igual con una caña legendaria y cebo legendario. Cuando se llenaba, el pity cambiaba lo que había salido por su objetivo, y un épico natural se volvía un común brillante. Ahora una categoría no dispara en un lance donde forzarla empeoraría el resultado, sea por una rareza más baja que la que salió o por un brillante donde salió un resplandeciente de la misma rareza. Se queda llena esperando un lance que sí mejore, y el pago sigue pendiente. Además, la especie forzada sale de la isla donde está el jugador. Antes salía del grupo global, y de ahí venía el reporte de “a veces me salen peces de otras islas”.
10. La economía
Los precios de los cebos se derivaron con una regla. Cada cebo se empareja con la caña que se desbloquea a su lado, y subir un nivel de cebo cuesta algo entre lo que ese paso vale en la caña emparejada con el cebo anterior y lo que vale en la suya, puesto al 75% de ese intervalo y redondeado sin salirse de él. Con eso, en cada isla, cada cebo es la opción más rentable exactamente en su caña y un desperdicio en las cañas muy por debajo. En la primera isla los precios por lance quedaron en 5, 20, 80, 275 y 1000 monedas, de común a legendario.
El ingreso se modeló en monedas por minuto de pesca, contando 11 s de preparación por lance, la espera del pique (que el cebo acorta), el minijuego, un 90% de peleas ganadas al nivel de la caña o por debajo y un 15% menos por cada nivel por encima, y el valor de las mutaciones y las variantes. En la primera isla:
| Caña | Precio | Sin cebo | Con su mejor cebo | Cebo | Paga la siguiente en |
|---|---|---|---|---|---|
| Inicial | 0 | 100 | 104 | común | 24 min |
| Bamboo Reed | 2 500 | 156 | 205 | poco común | 41 min |
| Budding Branch | 8 500 | 252 | 396 | poco común | 35 min |
| Thornspear | 14 000 | 391 | 745 | raro | 38 min |
| Tidevine Rod | 28 000 | 614 | 1 266 | raro | 43 min |
| Bloomfang | 55 000 | 948 | 2 269 | épico | 44 min |
| Verdant Reaper | 100 000 | 1 517 | 4 569 | legendario |
Cada mejora de caña y cada mejora de cebo emparejada sube el ingreso, y cada una tarda un poco más en pagarse: unos 40 minutos en la primera isla, alrededor de una hora en la segunda y entre 2 y 3.5 horas en las dos últimas, sin contar las recompensas de quests.
Un solo lance con cebo raro o épico devuelve menos de lo que costó el cebo más o menos la mitad de las veces, y con cebo legendario cerca de dos de cada tres, porque eso es lo que significa que un pez sea raro. Así que la pregunta de si el jugador pierde plata se responde por sesión. Simulando sesiones de 50 lances con cada caña y su cebo emparejado, la fracción que termina con menos monedas de las que empezó es 0.1% o menos hasta el cebo épico en todas las islas, y entre 0.9% y 2.1% con el legendario. El anzuelo vacío nunca pierde.
11. Limitaciones
Las escaleras están escritas a mano. Están afinadas contra el modelo de ingreso de la sección 10, pero no salen de él de forma cerrada, y cambiarlas obliga a correr ese modelo otra vez. El radio de 100 studs para los amigos fue una decisión de diseño sin un número en la especificación. La regla de pity supone que se mide en el peor equipo que califica, y con equipo mejor la probabilidad natural del objetivo puede ser otra, así que el 9% es exacto solo en ese punto. Y las rarezas secretas, que son los guardianes de cada isla, tienen su propio camino fuera de todo esto.
12. Lo que me dejó
Medir antes de cambiar fue lo que hizo posible este sistema. Cada problema de la versión 4 tenía un número detrás, y cada decisión de la 5 se puede revisar contra ese número. Lo otro fue buscar operaciones con buenas propiedades en vez de agregar reglas: la interpolación en el símplex no necesita renormalizar, el techo como condicionamiento no deforma lo que queda y los empujones proporcionales no pueden romper el techo. Y la cuenta del pity me enseñó a desconfiar de la intuición con probabilidades: un umbral de 20 lances parecía un seguro, y en realidad era la fuente principal de lo que supuestamente aseguraba.
Referencias
- S. Boyd y L. Vandenberghe. Convex Optimization. Cambridge University Press, 2004.
- L. Devroye. Non-Uniform Random Variate Generation. Springer, 1986.
- S. M. Ross. Introduction to Probability Models, 11.ª ed. Academic Press, 2014.
- W. Feller. An Introduction to Probability Theory and Its Applications, Vol. 1, 3.ª ed. Wiley, 1968.
Este texto de Mastedore. Todos los derechos reservados.