Animaciones
Las once animaciones de apertura y la revelación instantánea, cómo se construyen todas con las mismas cinco fases, y cada clave de cada archivo animations/<id>.yml.
Una caja se abre con una de once animaciones, o con Instantánea, que muestra el premio sobre la caja al momento. Elige una en Apertura → Animación en la vista general de una caja: clic izquierdo la elige, clic derecho la reproduce delante de ti gratis. Cada caja puede usar una distinta.
| Id | Nombre | Qué pasa |
|---|---|---|
wheel_of_fortune | Rueda de la fortuna | Una rueda de premios gira y frena en uno. |
carousel | Carrusel | Una tira de premios pasa ante una marca. |
cosmic_orb | Orbe cósmico | La tapa se abre y un orbe gira y estalla. |
pick_a_card | Elige una carta | El jugador elige una carta de un abanico. |
tier_slots | Tragaperras de rareza | Tres filas de gemas deciden la rareza y después el premio. |
rift | Grieta | Un portal se abre y arrastra un premio. |
tesseract | Teseracto | Un cubo de cristal rueda como un dado hasta el premio. |
event_horizon | Horizonte de sucesos | Un agujero negro devora todo salvo un premio. |
constellation | Constelación | Un cometa salta entre estrellas hasta el premio. |
orrery | Planetario | Los planetas se alinean y el sol elige el premio. |
starfall | Lluvia de estrellas | Los premios caen como meteoritos sobre la caja. |
NONE | Instantánea | Sin animación: el premio sale al instante. |
Los nombres y las descripciones de una línea del selector son screens.animations en messages.yml. Una caja
guardada con un id que no corresponde a ninguna animación se abre con la Rueda de la fortuna.
Cómo funcionan todas
Todas las animaciones se dibujan con entidades display enviadas como paquetes, así que no aparece nada en el mundo y no se puede recoger nada. Miran al jugador que abrió la caja, y todos los que miran ven lo mismo desde donde están.
El premio se decide antes de que empiece la animación. Una animación nunca puede pagar el premio equivocado ni pagar dos veces: dibuja las propias recompensas de la caja como relleno, con sus probabilidades reales, y cae en el premio sorteado. El relleno se reparte para que el mismo icono rara vez quede junto a sí mismo.
Cada apertura pasa por las mismas cinco fases:
| Fase | Qué pasa | Líneas de |
|---|---|---|
| Intro | Aparece el escenario. | phases.intro en el archivo de la animación |
| Giro | Los premios se mueven, el ganador igual que el resto. | phases.spin |
| Parada | El movimiento cae en el ganador. | phases.stop |
| Revelación | El ganador se separa de los demás y se entrega. | phases.reveal |
| Celebración | La celebración de la rareza. | celebrate de la rareza en tiers.yml |
Así una legendaria suena igual sea cual sea la animación de la caja. Las líneas de fase son secuencias de
ExyliaLib; en cada línea se rellenan %reward%, %tier%, %tier_color%, %player%, %crate% y %amount%,
y {item:reward} dibuja el premio. [LID] open abre la tapa de un cofre cuando el bloque de la caja es uno.
Cada animación tiene un límite de tiempo — sus propios tiempos más dos o tres segundos. Si no ha revelado para entonces, el plugin revela por ella.
Claves comunes
Cada archivo tiene sus propias claves, abajo, y la mayoría comparten estas:
| Clave | Significado |
|---|---|
intro-seconds, spin-seconds, stop-seconds | Cuánto dura cada fase. |
reveal-seconds | Cuánto tiempo está fuera el premio, celebración incluida. |
height, forward | Dónde está el escenario: bloques sobre el suelo de la caja, y hacia el jugador. |
icon-scale | Tamaño de cada premio, 1 es el tamaño de un ítem tirado. |
deceleration | Cómo frena: 2 es constante, más alto mantiene la velocidad más tiempo y se arrastra al final. Al menos 1.2. |
near-miss | Con qué frecuencia, o cuánto, casi se para antes en otro premio. |
tick-sound, pitch-rise | NOMBRE|volumen|tono del tic, y cuánto sube su tono al frenar, como parte del tono escrito. |
facing-offset | Gira todos los modelos sobre la vertical, en grados, si un cliente los dibuja al revés. |
phases | intro, spin, stop y reveal: líneas de efecto por fase. |
Se aceptan materiales de bloque, tokens de paleta ({primary}) y fuentes de icono (un material, una cabeza, un
ítem de otro plugin) donde lo dicen las tablas. Un valor fuera del rango de una clave se ajusta a él.
Edita un archivo y ejecuta /cratesadmin reload: la siguiente apertura usa los valores nuevos.
Rueda de la fortuna
animations/wheel_of_fortune.yml. Una rueda con las recompensas de la caja se levanta sobre el bloque, mirando
a quien abre. Una lengüeta arriba hace clic en cada clavija; la rueda frena, se arrastra y se para con el premio
debajo. El premio sale hacia el jugador.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 0.8 · 5.6 · 0.7 · 3.4 | |
height | 2.6 | Altura del centro de la rueda. |
radius | 1.05 | Radio del círculo en el que están los premios. |
segments | 10 | Premios en la rueda, de 6 a 16. |
icon-scale | 0.5 | |
radial-icons | true | Los premios giran con la rueda como segmentos impresos; false los mantiene derechos. |
turns · turns-variance | 3.0 · 0.6 | Vueltas completas antes de caer, y cuántas de más o de menos puede dar un giro. |
deceleration | 2.7 | |
near-miss | 0.3 | Parte de los giros, de 0 a 1, que se arrastran hasta el mismo borde del premio. |
peg-block · pointer-block | AMETHYST_BLOCK · GOLD_BLOCK | Las clavijas del borde, y la lengüeta. |
tick-sound · pitch-rise | BLOCK_NOTE_BLOCK_HAT|0.6|1.0 · 0.7 |
Carrusel
animations/carousel.yml. Una tira con las recompensas de la caja pasa ante una marca delante de quien abre,
difuminándose en los dos extremos, frena durante mucho tiempo y se para con el premio bajo la marca. El premio
se eleva hacia el jugador.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 0.7 · 6.2 · 0.8 · 3.4 | |
height · forward | 2.3 · 0.15 | |
visible | 7 | Premios visibles a la vez, de 5 a 11; los impares mantienen la marca sobre uno. |
spacing · icon-scale | 0.62 · 0.5 | Distancia entre dos premios, al menos 0.3, y su tamaño. |
curve | 0.35 | Cuánto se curvan los extremos alejándose del jugador; 0 es plana. |
slots · slots-variance | 34 · 5 | Premios que pasan antes de parar (al menos 8), y cuántos de más o de menos. |
deceleration · near-miss | 3.2 · 0.3 | |
marker-block · marker-color | WHITE_CONCRETE · {highlight} | Las barras encima y debajo del premio, y su brillo. |
rail-block | GRAY_STAINED_GLASS | Los raíles a lo largo de la tira; vacío para ninguno. |
tick-sound · pitch-rise | BLOCK_NOTE_BLOCK_HAT|0.5|1.2 · 0.5 | |
lift | 1.1 | Cuánto se eleva el premio hacia el jugador. |
Orbe cósmico
animations/cosmic_orb.yml. La tapa se abre y un orbe brillante sale de la caja. Dentro, un premio tras otro
parpadea, cada vez más rápido y luego más lento, hasta que uno se queda un instante de más y el orbe se
asienta en el premio real. Se agrieta con el color de la rareza del premio — que nunca se ve antes de la grieta
— y el premio sale flotando.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · reveal-seconds | 1.0 · 4.6 · 3.4 | |
hold-seconds | 0.9 | Cuánto se sostiene la cara del casi-acierto antes del último cambio. |
crack-seconds | 0.35 | Entre que aparece el ganador y la grieta. |
fast-gap · slow-gap | 0.1 · 0.45 | Segundos entre cambios de cara en el punto más rápido y el más lento; 0.1 es el mínimo. |
accel-share | 0.35 | Parte del giro que se pasa acelerando, de 0.05 a 0.9. |
height | 2.1 | |
orb-item | PURPLE_STAINED_GLASS | La cáscara: una fuente de icono. Vacío no dibuja ninguna. |
orb-scale · face-scale | 0.95 · 0.5 | Tamaño de la cáscara y de la cara de dentro. |
orb-glow | {secondary} | El contorno y las chispas de la cáscara. |
orb-turns | 1.5 | Vueltas que da la cáscara mientras cambian las caras. |
tick-sound · pitch-rise | BLOCK_NOTE_BLOCK_HAT|0.6|0.9 · 0.8 | |
crack-sound | BLOCK_GLASS_BREAK|1.0|1.2 |
Elige una carta
animations/pick_a_card.yml. Se reparten cartas boca abajo en abanico delante de quien abre y se barajan. Quien
abre elige una mirándola y haciendo clic: la carta que mira se levanta, y un título le dice cuánto tiempo
tiene. Se da la vuelta para mostrar el premio, y después las demás se dan la vuelta para mostrar qué más tiene
la caja.
El premio se decidió al gastar la llave, así que todas las cartas son la ganadora. A un jugador que tarda demasiado le toca la carta que está mirando, o cualquiera. Los clics mientras elige nunca aceleran la apertura.
| Clave | Por defecto | Significado |
|---|---|---|
cards | 5 | Cartas del abanico, de 3 a 7. |
card-back | PURPLE_STAINED_GLASS_PANE | El dorso de todas las cartas: una fuente de icono. |
edge-glow | {secondary} | Contorno de una carta boca abajo; vacío para ninguno. |
card-scale · height | 0.8 · 1.35 | |
fan-radius · fan-degrees · fan-distance | 2.4 · 70 · 0.9 | La curva del abanico, el ángulo que cubre, y a qué distancia delante de la caja está su carta central. |
deal-gap | 0.18 | Segundos entre dos cartas repartidas. |
shuffles · shuffle-seconds | 6 · 0.32 | Intercambios que hace el barajado (de 0 a 20) y segundos por intercambio. |
timeout-seconds | 15 | Tiempo para elegir, al menos 3. |
hover-lift · aim-tolerance | 0.16 · 0.42 | Cuánto se levanta la carta mirada, y a qué distancia de su centro una mirada sigue contando. |
reveal-seconds | 3.4 | |
deal-sound · shuffle-sound · hover-sound · flip-sound | pasar página, pasar página, hat, dejar libro | Una carta repartida, un intercambio, la carta mirada (solo quien abre), una carta que se da la vuelta. |
Su título y subtítulo son pick-title y pick-subtitle en messages.yml; %seconds% es el tiempo que queda.
Tragaperras de rareza
animations/tier_slots.yml. Tres filas de gemas, una gema por rareza de tiers.yml, giran delante de quien
abre y se paran de izquierda a derecha. La tercera fila cae siempre en la rareza del premio. Las dos primeras
caen en una pareja: la misma rareza (tres iguales) o, como casi-acierto, la siguiente rareza más rara que la
caja tenga de verdad, que la tercera fila rompe. El premio sale de la fila del medio — o de la última, tras un
casi-acierto.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · stop-seconds · reveal-seconds | 0.8 · 0.9 · 3.4 | |
first-stop-seconds · lane-gap-seconds | 2.4 · 0.8 | Hasta que se para la primera fila, y entre la primera y la segunda. |
last-lane-seconds | 1.6 | Cuánto sigue arrastrándose la última fila tras pararse la segunda. |
settle-seconds | 0.18 | Cuánto tarda una fila en encajar. |
height · forward | 2.3 · 0.15 | |
lane-spacing · row-spacing · gem-scale | 0.62 · 0.5 · 0.42 | |
rows | 3 | Gemas visibles por fila, 3 o 5. |
speed | 16.0 | Gemas por segundo al empezar, de 4 a 24. |
deceleration · last-lane-deceleration | 2.6 · 4.2 | |
near-miss | 0.25 | Parte de los giros cuyas dos primeras filas emparejan la siguiente rareza más rara, cuando la caja tiene una. |
gems | legendary: NETHER_STAR, epic: AMETHYST_SHARD, rare: DIAMOND, common: QUARTZ | La gema de cada rareza, por su id en tiers.yml. |
fallback-gems | NETHER_STAR, AMETHYST_SHARD, DIAMOND, EMERALD, QUARTZ | Gemas para rarezas que no están en la lista, la más rara primero. |
gem-glow | true | Contornea cada gema con el color de su rareza. |
payline-block · payline-color | WHITE_CONCRETE · {highlight} | |
tick-sound · lane-stop-sound · pitch-rise | hat · bombo · 0.4 |
Si añades una rareza a tiers.yml, dale una gema aquí, o tomará la siguiente gema de reserva.
Grieta
animations/rift.yml. Un portal se abre sobre la caja, mirando a quien abre. Las recompensas de la caja salen
en chorro y giran dentro, frenando mientras la grieta late; una sale arrastrada hacia el jugador mientras las
demás vuelven a ser absorbidas, y la grieta se cierra tras ella.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 1.2 · 4.8 · 0.9 · 3.4 | |
height · forward | 2.4 · 0.1 | |
radius · orbit-radius | 1.0 · 0.6 | El borde de la grieta, y el círculo que recorren las recompensas dentro. |
items · icon-scale | 8 · 0.36 | Recompensas girando, de 5 a 12. |
turns · turns-variance · deceleration | 2.5 · 0.5 · 2.8 | |
ring-color · ring-fade · ring-points · ring-every | {primary} · {secondary} · 18 · 0.1 | El polvo del borde, sus motas (de 0 a 48) y cada cuánto, en segundos. |
rim-block · rim-pieces · rim-color | AMETHYST_BLOCK · 10 · {secondary} | Los fragmentos que giran en el borde (de 0 a 24). |
core-block · core-color | BLACK_STAINED_GLASS · {primary} | El vacío: tres placas que giran. |
tick-sound · pitch-rise | BLOCK_AMETHYST_BLOCK_CHIME|0.6|1.0 · 0.6 | |
pull | 1.3 | Cuánto se arrastra el premio hacia el jugador. |
Teseracto
animations/tesseract.yml. Un cubo hueco de aristas brillantes y caras de cristal tenue aparece sobre la caja,
con un premio en cada cara. Se lanza al aire y da vueltas como un dado, rebota, rueda hasta pararse y se
tambalea sobre una arista antes de caer con el ganador mirando al jugador. Sus aristas destellan con el color
de la rareza, se hace añicos y el premio sale flotando.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · stop-seconds · reveal-seconds | 0.9 · 0.5 · 3.0 | |
toss-seconds · bounce-seconds | 1.0 · 0.55 | El lanzamiento en el aire, y el primer rebote; cada rebote siguiente es más corto. |
bounces | 2 | De 1 a 3. |
roll-seconds · rolls | 0.4 · 3 | La primera vuelta sobre una arista (cada una después es más lenta), y cuántas, de 1 a 5. |
teeter-seconds · teeter-angle | 1.2 · 40.0 | El último tambaleo, y cuánto se inclina, de 15 a 44 grados. |
height · floor · forward | 2.6 · 1.3 · 0.3 | Dónde aparece, el suelo invisible en el que cae, y cuánto hacia el jugador queda. |
toss-height · bounce-height | 1.3 · 0.55 | |
size · icon-scale | 1.0 · 0.48 | La arista del cubo, de 0.4 a 2. |
edge-block · edge-thickness · edge-color | AMETHYST_BLOCK · 0.045 · {secondary} | |
face-block | PURPLE_STAINED_GLASS | Las caras tenues. |
dust-color | {primary} | El polvo que levanta al caer. |
whoosh-sound · thud-sound · tick-sound · teeter-sound · shatter-sound | barrido · pizarra profunda · golpe de amatista · resonancia · cristal roto | |
pitch-rise · pull | 0.6 · 1.2 |
Teseracto no tiene facing-offset.
Horizonte de sucesos
animations/event_horizon.yml. Un agujero negro se forma sobre la caja: un núcleo oscuro dentro de un disco
inclinado y brillante. Las recompensas de la caja orbitan en el disco y se acercan en espiral; una a una se
estiran y son engullidas, cada espera más larga que la anterior. Las dos últimas se lanzan juntas al horizonte,
una es tragada, y el agujero colapsa en un destello, expulsando a la superviviente.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 1.3 · 5.2 · 0.8 · 3.4 | Intro al menos 0.3, giro al menos 2. |
height | 2.3 | |
items · icon-scale | 10 · 0.4 | Recompensas orbitando, de 4 a 14. |
outer-radius · inner-radius | 1.35 · 0.9 | La órbita al empezar y al terminar la espiral. |
tilt | 24.0 | Cuánto se inclina el disco, de 0 a 60 grados. |
turns-per-second | 0.4 | En la órbita exterior, de 0 a 1.5; más rápido al acercarse. |
lead | 0.18 | Parte del giro antes de la primera engullida, de 0 a 0.9. |
tension | 1.22 | Cuánto más larga es cada espera que la anterior, de 1 a 2. |
near-miss | 0.55 | Cuánto se hunden las dos últimas, de 0 a 0.8. |
core-block · core-size · shell-block · shell-color | BLACK_CONCRETE · 0.5 · BLACK_STAINED_GLASS · {primary} | |
disc-color · disc-fade · disc-points · disc-every | {primary} · {secondary_light} · 30 · 0.1 | |
tick-sound · pitch-rise | campanilla de amatista · 0.7 | |
swallow-sound · collapse-sound | ancla de reaparición agotándose · rotura de racimo de amatista | |
pull | 1.4 |
Constelación
animations/constellation.yml. Cae la noche sobre la caja. Las recompensas aparecen una tras otra como
estrellas en un cielo que mira a quien abre, y líneas de luz las unen en una figura. Un cometa salta de
estrella en estrella, rápido al principio, frenando, demorándose en una vecina; cae en el premio, todas las
líneas convergen en él, y se enciende con el color de su rareza y sale flotando.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 1.8 · 4.4 · 0.8 · 3.4 | |
height · forward | 2.5 · 0.15 | |
width · span | 3.0 · 1.7 | El cielo sobre el que se reparten las estrellas. |
stars · icon-scale | 8 · 0.42 | De 5 a 10 estrellas. |
spacing | 0.45 | Distancia mínima entre dos estrellas; ajustada al espacio que tiene el cielo. |
hops | 12 | De 4 a 20. |
slowdown · hesitation | 4.5 · 1.7 | Cuánto más duran los últimos saltos que los primeros, y cuánto más espera el último. |
line-color · sky-color | {secondary} · {letters_black} | |
comet-item · comet-scale · comet-color | NETHER_STAR · 0.2 · {letters} | |
star-sound · hop-sound · pitch-rise · flare-sound | campanilla · campanilla de bloque musical · 0.9 · selección de faro | |
pull | 1.2 |
Planetario
animations/orrery.yml. Un sol brillante se eleva sobre la caja con las recompensas girando a su alrededor
como planetas, cada uno en su órbita inclinada, algunos con una luna. Frenan a la vez y se colocan en una
línea, todos menos uno, que cruje el último tramo. El sol se carga y dispara a lo largo de la línea; el
planeta del extremo cercano es el premio y sale arrastrado mientras los demás caen de sus órbitas.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · reveal-seconds | 1.2 · 4.4 · 3.4 | |
creak-seconds · charge-seconds | 0.9 · 0.7 | El último planeta crujiendo hasta la línea; el sol cargándose. |
height · tilt | 2.3 · 24 | Inclinación de 0 a 60 grados. |
planets · icon-scale | 6 · 0.34 | De 4 a 7 planetas. |
inner-radius · outer-radius | 0.55 · 1.9 | |
turns · deceleration | 4.0 · 2.6 | Vueltas del planeta más interior; los exteriores dan menos. |
line-angle | 58 | La línea en la que se alinean, de 15 a 75 grados desde la línea hacia el jugador. |
near-miss | 14 | Grados que le faltan al último planeta para la línea, de 0 a 30. |
moons · moon-block · moon-scale · moon-turns | 2 · CALCITE · 0.09 · 1.2 | De 0 a 3 lunas. |
sun-block · sun-scale · sun-color | SHROOMLIGHT · 0.55 · {highlight} | |
ring-color · ring-fade · ring-density · ring-every | {primary} · {secondary} · 11 · 0.4 | |
beam-block · beam-color | SEA_LANTERN · {highlight} | |
pull | 1.6 | |
tick-sound · pitch-rise | campanilla de bloque musical · 0.7 | |
creak-sound · charge-sound · fire-sound · fall-sound | afiladora · selección de faro · propulsión · picado de phantom |
Lluvia de estrellas
animations/starfall.yml. El cielo sobre la caja se vuelve de noche y un objetivo brillante se enciende sobre
su tapa. Las recompensas caen como meteoritos, cada una choca contra el objetivo y tira la anterior, una lluvia
que va frenando. Un meteorito enorme viene hacia el objetivo y se desvía; después el último cae despacio,
aterriza con una onda expansiva y sube hacia el jugador: el premio.
| Clave | Por defecto | Significado |
|---|---|---|
intro-seconds · spin-seconds · stop-seconds · reveal-seconds | 1.0 · 3.4 · 0.6 · 3.4 | spin-seconds es la lluvia antes del casi-acierto. |
fall-seconds · near-miss-fall-seconds · winner-fall-seconds | 0.55 · 1.0 · 1.7 | |
fast-gap · slow-gap | 0.2 · 0.75 | Segundos entre impactos al principio y al final de la lluvia. |
target-height · target-radius | 1.05 · 0.55 | Radio de 0.2 a 1.5. |
launch-height · launch-side · launch-back | 4.8 · 2.4 · 1.0 | Desde dónde salen los meteoritos. |
icon-scale · near-miss-scale | 0.5 · 1.8 | |
tumble-turns | 1 | Vueltas completas que da cada meteorito al caer, de 0 a 4. |
target-color · target-fade | {primary} · {secondary} | |
trail-color · trail-fade · flames | {accent} · {primary} · true | |
sky-color · stars | {primary} · 6 | Estrellas titilando a la vez, de 0 a 24. |
shockwave-color | {secondary_light} | |
launch-sound · impact-sound · near-miss-sound · landing-sound | disparo de blaze · rotura de amatista · propulsión · rotura de bloque de amatista | |
pitch-rise · rise | 0.7 · 1.1 |
La revelación instantánea
Elegir Instantánea (guardada como NONE) se salta la animación: el premio crece sobre la caja durante unos
dos segundos mientras se celebra su rareza. No hay nada que configurar; la celebración sigue viniendo de
tiers.yml.
¿Falta algo en esta página? Dínoslo en Discord