La caja
Rarezas, los dos tipos de llave, los rodillos que caen y los bloques que los abren.
La caja es cómo se ganan los efectos en vez de regalarlos. Se gasta una llave, cae un rodillo, y lo que sale se escribe en la fila del propio jugador — suyo para siempre, pase lo que pase con su rango.
Rarezas
Cada efecto declara un tier en effects.yml, y config.yml declara cuáles son:
tiers:
common:
name: "Common"
material: GRAY_DYE
color: "{muted}"
chance: 60.0
priority: 1
rare:
name: "Rare"
material: LIGHT_BLUE_DYE
color: "{info}"
chance: 25.0
priority: 2
epic:
name: "Epic"
material: PINK_DYE
color: "{accent}"
chance: 12.0
priority: 3
legendary:
name: "Legendary"
material: ORANGE_DYE
color: "{highlight}"
chance: 3.0
priority: 4| Clave | Qué hace |
|---|---|
name | Cómo la llaman los menús y los placeholders. |
material | El objeto con el que se dibuja la rareza. |
color | El color en el que se escriben su nombre y sus efectos. |
chance | Con qué frecuencia cae la caja en ella, en relación a las demás. |
priority | Dónde se sitúa en los menús; el más bajo va primero. |
Nada de esto está fijado en el código. Borra legendary, inventa mythic, renombra las cuatro: la
clave es el id que effects.yml escribe como tier, y un efecto que nombra una rareza que ya no
existe cae en la primera — pierde su color, nunca su existencia.
Las probabilidades que muestra el menú se calculan a partir de los pesos, así que cuatro rarezas con
60/25/12/3 y cuatro con 6/2.5/1.2/0.3 se comportan igual. Borrar una rareza reparte sus
probabilidades entre las demás en vez de dejar un hueco del tres por ciento.
Llaves
Dos tipos, y la caja acepta los dos.
En la fila
Un número en la fila del propio jugador. No se puede tirar, duplicar ni perder por tener el inventario lleno:
/killeffectsadmin keys give <jugador> <cantidad>
/killeffectsadmin keys take <jugador> <cantidad>
/killeffectsadmin keys set <jugador> <cantidad>
/killeffectsadmin keys check <jugador>Seguro desde consola — una tienda, un listener de votos, un plugin de recompensas o una caja de otro plugin entregan llaves igual.
[console] killeffectsadmin keys give %player% 1En la mano
Un objeto, así que se puede vender en un puesto, meter en un kit, tirar y regalar:
/killeffectsadmin item key <jugador> [1-64]Click derecho a un bloque de caja con una en la mano y se abre ahí mismo: una llave, un rodillo, sin pantalla de cuántas. La llave sale de la mano en cuanto el rodillo empieza a caer. El click izquierdo nunca gasta una — así es como un jugador pregunta qué es un bloque — y el click derecho en cualquier otro sitio tampoco: una llave no se puede colocar como bloque, así que no se pierde contra una pared.
Cómo se dibuja es key-item en config.yml. Se reconoce por lo que lleva en sus datos, no por su
nombre ni su material, así que renombrarla no cambia nada y una imitación no abre nada.
El objeto vale la pena cuando las llaves se cambian entre jugadores o se venden en una tienda física. El número en la fila vale la pena cuando no: no se puede estafar, ni perder al morir, ni duplicar por un bug de otro plugin. Un servidor que quiera las dos cosas simplemente usa los dos comandos.
Abrirla
/killeffect crate, el botón de la esquina del menú de efectos, o un bloque atado con la mano
vacía. La primera
pantalla pregunta una sola cosa: cuántas a la vez. Elegir cuatro gasta cuatro llaves y suelta cuatro
rodillos en paralelo en la pantalla siguiente.
Cuántas
menus/crate.yml. Las opciones se dibujan hasta crate.max-at-once, con un tope de siete por el
ancho de la pantalla, y se reparten como se repartirán los rodillos — donde haces clic es donde
caerá ese rodillo.
Los rodillos caen
menus/crate_open.yml. Un rodillo por caja, cada uno ocupando todo el alto del cofre, cada uno
con sus caras y con su meta crate.stagger-seconds después del anterior. Cada cara mantiene su
nombre y su lore durante toda la caída, así que un rodillo se puede leer mientras cae.
Lo que pasó de largo se queda
No se limpia nada cuando un rodillo para. Lo que se quedó a una casilla sigue en pantalla, porque la mitad de lo que vale una caja es el legendario que pasó de largo.
Se paga cuando cada rodillo para
Las llaves se gastan y los premios se deciden antes del primer fotograma, pero no se entrega
nada hasta que un rodillo para de verdad en la línea. Cuatro cajas abiertas de golpe se pagan de
una en una, con stagger segundos entre ellas, cada una con su sonido y su línea en el chat.
Cerrar la ventana a media caída no cuesta nada: los rodillos dejan de dibujarse y los premios
siguen cayendo con su propio reloj. Salir del servidor corta el temporizador, así que un rodillo
que seguía en el aire se liquida al salir: desbloqueado en su fila, y cualquier ficha guardada en
la cola de recompensas hasta su siguiente entrada.
Duplicados
Caer en algo que ya se tiene devuelve llaves — tantas como diga crate.duplicate-refund. Con el 1
por defecto un duplicado es una tirada gratis en vez de una pérdida, que es lo que mantiene una
colección casi completa digna de seguir abriendo.
Con crate.reward: ITEM no se desbloquea nada, así que ninguna apertura es un duplicado y la
devolución no llega a aplicarse: cada llave paga una ficha.
Ajustes
crate:
enabled: true
start-keys: 0
duplicate-refund: 1
reward: UNLOCK
blocks: []
max-at-once: 4
spin-frames: 34
stagger-seconds: 2.0| Clave | Por defecto | Qué hace |
|---|---|---|
enabled | true | Apagada, el botón lo dice en vez de abrir. |
start-keys | 0 | Llaves que recibe un jugador la primera vez que se le ve. |
duplicate-refund | 1 | Llaves devueltas por algo que ya se tenía. |
reward | UNLOCK | Qué entrega la caja. UNLOCK deja el efecto en la cuenta, ITEM entrega solo su ficha, BOTH hace las dos cosas. ITEM y BOTH quieren behaviour.mode en weapon o both. |
blocks | [] | Los bloques que abren la caja. Átalos en el juego, no a mano. |
max-at-once | 4 | Cuántas cajas puede abrir un jugador de una vez. La pantalla admite siete. |
spin-frames | 34 | Cuántas caras recorre el primer rodillo antes de parar. Tope de 200, unos once segundos. |
stagger-seconds | 2.0 | Cuánto después de parar uno para el siguiente. 0 los para a la vez. |
on-spin, on-win y on-duplicate son bloques de efecto completos de ExyliaLib — título, action
bar, boss bar, sonido, partícula y firework — lanzados en cada tick de caída, y después una vez por
rodillo en cuanto para: la victoria, o el duplicado cuando ese rodillo cayó en algo ya conseguido.
Bloques de caja
Un bloque físico, en cualquier parte del mundo, que abre la caja al hacerle clic:
/killeffectsadmin crate block add # el bloque que estás mirando
/killeffectsadmin crate block remove
/killeffectsadmin crate block list
/killeffectsadmin crate block clearSe escriben en config.yml, no en el mundo, así que un bloque atado sobrevive a un pegado de esquema,
a un world edit y a un rollback. Mientras está atado no se puede romper, ni volar, ni empujar, y
hacerle clic ya no hace lo que haría su material — una caja dibujada sobre un barril no debe abrir un
barril.
Un bloque en un mundo que carga después del plugin — un hub que un gestor de mundos levanta más tarde — empieza a responder en cuanto ese mundo carga.
Qué entrega una caja
Lo que sale se escribe en la fila del jugador en vez de darse como permiso, así que sobrevive a un
rango que caduca. /killeffectsadmin unlocks grant|revoke|clear es la misma puerta para un plugin de
recompensas que quiera entregar un efecto sin caja de por medio.
Un jugador puede usar un efecto que ganó en una caja o uno que le da su rango. Vender una rareza
como rango es una línea — exyliakilleffect.tier.legendary — y es independiente de lo que haya
sacado de la caja.
¿Falta algo en esta página? Dínoslo en Discord