Creación de Eventos
Esta guía es para EliteMobs 7.3.4 y posteriores
¿Qué son los Eventos Personalizados?
Los Eventos Personalizados aquí se refieren a eventos que ocurren aleatoriamente en el juego, ya sea basados en acciones del jugador o con un disparador temporizado. El plugin viene precargado con varios Eventos Personalizados, como el evento de Balrog, el evento de Kraken y los eventos de Goblin del Tesoro, por nombrar algunos.
Este sistema se llama Eventos Personalizados porque los eventos no solo se pueden personalizar, sino también crear desde cero. Lo que sigue es una guía sobre cómo crear y personalizar tus propios eventos.
Creando Tus Eventos Personalizados
Los archivos de configuración de eventos personalizados deben crearse en:
plugins/EliteMobs/customevents/
Los archivos deben usar el formato .yml. El nombre del archivo (sin la extensión .yml) se convierte en el identificador del evento.
Ejemplo: mi_evento_genial.yml se referencia como mi_evento_genial
Configuraciones comunes
Las siguientes configuraciones pueden/deben usarse tanto para eventos de acción como temporizados.
isEnabled
Establece si el evento está habilitado.
| Clave | Valores | Por defecto |
|---|---|---|
isEnabled | Boolean | true |
Ejemplo
isEnabled: true
eventType
Establece el tipo de evento.
| Clave | Valores | Por defecto |
|---|---|---|
eventType | DEFAULT / BREAK_BLOCK / FISH / TILL_SOIL / TIMED | none |
Nota: BREAK_BLOCK, FISH y TILL_SOIL son Eventos de Acción y TIMED es Eventos Temporizados. DEFAULT es para eventos activados por otros medios o condiciones especiales.
Ejemplo
eventType: BREAK_BLOCK
bossFilenames
Establece la lista de jefes que se generarán. ¡Obligatorio!
| Clave | Valores | Por defecto |
|---|---|---|
bossFilenames | String List | none |
Ejemplo
bossFilenames:
- balrog.yml
- my_event_boss.yml
announcementPriority
Establece la prioridad de anuncio.
| Clave | Valores | Por defecto |
|---|---|---|
announcementPriority | Integer | none |
Ejemplo
announcementPriority: 1
startMessage
Establece el mensaje enviado al inicio del evento.
| Clave | Valores | Por defecto |
|---|---|---|
startMessage | String | none |
Ejemplo
startMessage: An event has started!
![]()
endMessage
Establece el mensaje enviado al final del evento.
| Clave | Valores | Por defecto |
|---|---|---|
endMessage | String | none |
Ejemplo
endMessage: An event has ended!
eventStartCommands
Establece los comandos que se ejecutan al inicio del evento.
| Clave | Valores | Por defecto |
|---|---|---|
eventStartCommands | String List | none |
Ejemplo
eventStartCommands:
- say The event now starts!!
- "$chance=0.5$ say What a spawn!"

eventEndCommands
Establece los comandos que se ejecutan al final del evento.
| Clave | Valores | Por defecto |
|---|---|---|
eventEndCommands | String List | none |
Ejemplo
eventEndCommands:
- say The event ends, so sad.
- "$chance=0.5$ say Too slow bud!"

Ejemplo de Configuración de Evento
isEnabled: true
bossFilenames:
- "cool_boss.yml"
- "other_cool_boss.yml"
announcementPriority: 3
startMessage: "Cool event is starting!"
endMessage: "Cool event is ending!"
eventStartCommands:
- say The event started!
eventEndCommands:
- say The event ended!
Ejemplo Completo de Evento Temporizado
isEnabled: true
eventType: TIMED
bossFilenames:
- "my_timed_boss.yml"
announcementPriority: 3
startMessage: "A timed event has started!"
endMessage: "The timed event has ended!"
eventStartCommands:
- say The timed event began!
eventEndCommands:
- say The timed event concluded!
spawnType: "my_spawn_location.yml"
localCooldown: 120
globalCooldown: 30
weight: 100
eventDuration: 15
endEventWithBossDeath: true
minimumPlayerCount: 1
Eventos de Acción
Eventos que tienen una probabilidad de ejecutarse cuando ocurre una acción específica, como romper un bloque o pescar.
Nota: los eventos de acción aplican automáticamente un tiempo de espera de 60 minutos por jugador para evitar que el mismo jugador active eventos repetidamente.
chance
Establece la probabilidad de que el evento ocurra cuando sucede la acción.
| Clave | Valores | Por defecto |
|---|---|---|
chance | Valor entre 0.0 y 1.0 | 0 |
Ejemplo
chance: 0.001
breakableMaterials
Establece la lista de materiales a verificar si la acción está configurada como BREAK_BLOCK.
| Clave | Valores | Por defecto |
|---|---|---|
breakableMaterials | Lista de materials | none |
Ejemplo
breakableMaterials:
- BEEHIVE
- BIRCH_WOOD
Ejemplo de Configuración
chance: 0.001
breakableMaterials:
- COAL_ORE
Establece una probabilidad del 0.1% de ejecutar el evento cuando se rompe un bloque de mineral de carbón, asumiendo que el tipo de evento es BREAK_BLOCK.
Ejemplo Completo de Evento de Acción
isEnabled: true
eventType: BREAK_BLOCK
bossFilenames:
- "mining_boss.yml"
announcementPriority: 2
startMessage: "You've awakened something..."
chance: 0.001
breakableMaterials:
- DIAMOND_ORE
- EMERALD_ORE
Eventos Temporizados
Los Eventos Temporizados son eventos que ocurren en intervalos de tiempo configurables. Una vez que termina el tiempo de espera de un evento temporizado, se selecciona un evento temporizado aleatorio de la lista de eventos temporizados basándose en el peso del evento.
spawnType
Establece el Custom Spawn usado por el evento, que define dónde puede aparecer el jefe.
| Clave | Valores | Por defecto |
|---|---|---|
spawnType | Filename | none |
Ejemplo
spawnType: nether_spawn.yml
localCooldown
Establece la cantidad de tiempo, en minutos, antes de que este evento pueda ser seleccionado nuevamente.
| Clave | Valores | Por defecto |
|---|---|---|
localCooldown | Integer | 0 |
Ejemplo
localCooldown: 120
globalCooldown
Establece la cantidad de tiempo, en minutos, antes de que se seleccione el siguiente evento.
| Clave | Valores | Por defecto |
|---|---|---|
globalCooldown | Integer | 0 |
Ejemplo
globalCooldown: 60
weight
Establece el peso del evento, afectando la probabilidad de que sea seleccionado sobre otros eventos. Recomendado: 100.
El sistema de peso determina la probabilidad relativa de selección del evento. Por ejemplo:
- Evento A con peso 100 vs Evento B con peso 50 = Evento A tiene el doble de probabilidades de ser seleccionado
- Mayor peso = mayor probabilidad de ser elegido
- Los eventos se evalúan aproximadamente cada 5 minutos
| Clave | Valores | Por defecto |
|---|---|---|
weight | Double | 0 |
Ejemplo
weight: 60.5
eventDuration
Establece la duración máxima del evento, en minutos.
| Clave | Valores | Por defecto |
|---|---|---|
eventDuration | Integer | 0 |
Ejemplo
eventDuration: 30
endEventWithBossDeath
Establece si el evento termina con la muerte del jefe.
| Clave | Valores | Por defecto |
|---|---|---|
endEventWithBossDeath | Boolean | true |
Ejemplo
endEventWithBossDeath: true
eventEndTime
Establece el tiempo del juego (en ticks) cuando el evento termina. Usa el sistema de tiempo de Minecraft donde 0=amanecer, 6000=mediodía, 12000=atardecer, 18000=medianoche, 23000=última noche. Establece en -1 para desactivar la finalización basada en tiempo.
| Clave | Valores | Por defecto |
|---|---|---|
eventEndTime | Integer (0-24000, -1 para desactivar) | -1 |
Ejemplo
eventEndTime: 23000
minimumPlayerCount
Establece la cantidad mínima de jugadores en línea antes de que el evento comience.
| Clave | Valores | Por defecto |
|---|---|---|
minimumPlayerCount | Integer | 1 |
Ejemplo
minimumPlayerCount: 5
Nota: los eventos se ponen en cola, lo que significa que solo comenzarán una vez que se cumplan las condiciones definidas en el spawnType.
Ejemplo de Configuración de Eventos
isEnabled: true
bossFilenames:
- "cool_boss.yml"
- "other_cool_boss.yml"
announcementPriority: 3
startMessage: "Cool event is starting!"
endMessage: "Cool event is ending!"
eventStartCommands:
- say The event started!
eventEndCommands:
- say The event ended!
spawnType: "myCoolSpawn.yml"
localCooldown: 30
globalCooldown: 15
weight: 100
eventDuration: 20
endEventWithBossDeath: true
eventEndTime: 10000
minimumPlayerCount: 5
