Crear Eventos
Esta guía es para EliteMobs 10 y versiones posteriores
¿Qué son los Eventos Personalizados?
Los Eventos Personalizados aquí se refieren a eventos que ocurren aleatoriamente en el juego, ya sea en función de las acciones del jugador o con un activador programado. El plugin viene precargado con varios Eventos Personalizados, como el evento del Balrog, el evento del Kraken y los eventos del Treasure Goblin, por nombrar algunos.
Este sistema se llama Eventos Personalizados porque los eventos no solo pueden personalizarse, sino también crearse desde cero. Lo que sigue es una guía sobre cómo crear y personalizar tus propios eventos.
Crear 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: my_cool_event.yml se referencia como my_cool_event
Ajustes de configuración comunes
Los siguientes ajustes pueden/deben usarse tanto para eventos de acción como para eventos programados.
isEnabled
Establece si el evento está habilitado.
| Key | Valores | Predeterminado |
|---|---|---|
isEnabled | Boolean | true |
Ejemplo
isEnabled: true
eventType
Establece el tipo de evento.
| Key | Valores | Predeterminado |
|---|---|---|
eventType | BREAK_BLOCK / FISH / TILL_SOIL / TIMED | DEFAULT |
Ten en cuenta que BREAK_BLOCK, FISH y TILL_SOIL son Eventos de Acción y TIMED son Eventos Programados.
eventType es obligatorio. DEFAULT es el marcador de posición al que recurre EliteMobs cuando el ajuste falta o no coincide con ninguno de los tipos de arriba. Un evento que se quede en DEFAULT registra una advertencia y no se registra en absoluto, así que ni siquiera se leen los ajustes que hay debajo de él.
Ejemplo
eventType: BREAK_BLOCK
bossFilenames
Establece la lista de jefes que aparecerán. ¡Obligatorio!
| Key | Valores | Predeterminado |
|---|---|---|
bossFilenames | String List | ninguno |
Ejemplo
bossFilenames:
- balrog.yml
- my_event_boss.yml
announcementPriority
Establece la prioridad de anuncio.
| Key | Valores | Predeterminado |
|---|---|---|
announcementPriority | Integer | 0 |
Ejemplo
announcementPriority: 1
startMessage
Establece el mensaje enviado al inicio del evento.
| Key | Valores | Predeterminado |
|---|---|---|
startMessage | String | ninguno |
Ejemplo
startMessage: An event has started!
![]()
endMessage
Establece el mensaje enviado al final del evento.
| Key | Valores | Predeterminado |
|---|---|---|
endMessage | String | ninguno |
Ejemplo
endMessage: An event has ended!
eventStartCommands
Establece los comandos que se ejecutan al inicio del evento.
| Key | Valores | Predeterminado |
|---|---|---|
eventStartCommands | String List | ninguno |
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.
| Key | Valores | Predeterminado |
|---|---|---|
eventEndCommands | String List | ninguno |
Ejemplo
eventEndCommands:
- say The event ends, so sad.
- "$chance=0.5$ say Too slow bud!"

minimumPlayerCount
Establece la cantidad mínima de jugadores en línea requerida para que el evento comience.
Esto solo se comprueba para los Eventos de Acción. Los Eventos Programados lo ignoran: solo requieren que haya al menos un jugador conectado.
| Key | Valores | Predeterminado |
|---|---|---|
minimumPlayerCount | Integer | 1 |
Ejemplo
minimumPlayerCount: 5
Ejemplo de configuración de Evento
isEnabled: true
eventType: TIMED
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 Programado
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 por jugador para evitar que el mismo jugador active eventos repetidamente. El tiempo de espera es de 4 minutos por defecto y se puede configurar mediante actionEventMinimumCooldownMinutes en events.yml. Los eventos de acción también se pueden desactivar en todo el servidor poniendo actionEventsEnabled a false en el mismo archivo.
Los tres tipos de acción se disparan así:
eventType | Disparador |
|---|---|
BREAK_BLOCK | Un jugador rompe un bloque. Primero se tira chance, y después se comprueba el bloque roto contra breakableMaterials. |
FISH | Un jugador recoge algo. Los lanzamientos que no pescan nada nunca activan el evento. |
TILL_SOIL | Un jugador hace clic derecho sobre DIRT o GRASS_BLOCK llevando cualquier azada. |
En todos los casos la ubicación debe estar en un mundo para el que EliteMobs esté habilitado, no debe estar dentro de un mundo de mazmorra de EliteMobs ni de una instancia en curso, y debe pasar la bandera elitemobs-events de WorldGuard.
chance
Establece la probabilidad de que el evento ocurra cuando se realiza la acción.
| Key | Valores | Predeterminado |
|---|---|---|
chance | Valor entre 0.0 y 1.0 | 0 |
Ejemplo
chance: 0.001
breakableMaterials
Establece la lista de materiales a comprobar si la acción está configurada como BREAK_BLOCK.
| Key | Valores | Predeterminado |
|---|---|---|
breakableMaterials | Lista de materiales | ninguno |
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 Programados
Los Eventos Programados son eventos que ocurren a intervalos de tiempo configurables. Una vez que termina el tiempo de espera de un evento programado, se elige un evento programado aleatorio de la lista de eventos programados en función del peso del evento.
No se elige nada mientras el servidor no tenga jugadores conectados, y un evento que ya se esté ejecutando nunca se elige por segunda vez. Los eventos programados se pueden desactivar en todo el servidor poniendo timedEventsEnabled a false en events.yml.
spawnType
Establece el Spawn Personalizado usado por el evento, que define dónde puede aparecer el jefe.
| Key | Valores | Predeterminado |
|---|---|---|
spawnType | Filename | ninguno |
Ejemplo
spawnType: nether_spawn.yml
localCooldown
Establece la cantidad de tiempo, en minutos, antes de que este evento pueda volver a elegirse.
| Key | Valores | Predeterminado |
|---|---|---|
localCooldown | Double | 0 |
Ejemplo
localCooldown: 120
globalCooldown
Establece la cantidad de tiempo, en minutos, antes de que se elija el siguiente evento.
| Key | Valores | Predeterminado |
|---|---|---|
globalCooldown | Double | 0 |
Ejemplo
globalCooldown: 60
weight
Establece el peso del evento, lo que afecta a la probabilidad de que sea elegido frente a 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 = el Evento A tiene el doble de probabilidades de ser seleccionado
- Mayor peso = mayor probabilidad de ser elegido
- El programador de eventos programados comienza ~5 minutos después del inicio del servidor y luego comprueba una vez por minuto si el tiempo de espera global ha transcurrido y se puede elegir un evento
| Key | Valores | Predeterminado |
|---|---|---|
weight | Double | 0 |
Ejemplo
weight: 60.5
eventDuration
Establece la duración máxima del evento, en minutos.
| Key | Valores | Predeterminado |
|---|---|---|
eventDuration | Double | 0 |
Ejemplo
eventDuration: 30
endEventWithBossDeath
Establece si el evento termina con la muerte del jefe.
| Key | Valores | Predeterminado |
|---|---|---|
endEventWithBossDeath | Boolean | true |
Ejemplo
endEventWithBossDeath: true
eventEndTime
Establece la hora del juego (en ticks) en la que termina el evento. Usa el sistema de tiempo de Minecraft donde 0=amanecer, 6000=mediodía, 12000=atardecer, 18000=medianoche, 23000=madrugada. Establece -1 para deshabilitar la finalización basada en el tiempo.
| Key | Valores | Predeterminado |
|---|---|---|
eventEndTime | Integer (0-24000, -1 para deshabilitar) | -1 |
Ejemplo
eventEndTime: 23000
Ten en cuenta que 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
eventType: TIMED
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
Activar un evento manualmente
/em event <event filename>
Pone en cola un evento programado para que empiece en el siguiente momento y lugar válidos, exactamente como si lo hubiera elegido el planificador. Requiere el permiso elitemobs.event.start, debe ejecutarlo un jugador y solo acepta nombres de archivo de eventos habilitados cuyo eventType sea TIMED.
Si el evento no se puede poner en cola, se te dice por qué: no hay spawnType establecido, un spawnType que no apunta a un archivo de spawn personalizado válido, ninguno de los bossFilenames es válido, u otro plugin ha cancelado el evento.
Ajustes de eventos para todo el servidor
Estos viven en ~/plugins/EliteMobs/events.yml y se aplican a todos los eventos:
| Clave | Descripción | Por defecto |
|---|---|---|
actionEventsEnabled | Si los eventos de acción ocurren siquiera | true |
timedEventsEnabled | Si los eventos programados ocurren siquiera | true |
actionEventMinimumCooldownMinutes | Tiempo de espera por jugador, en minutos, después de que se active un evento de acción | 4 |
timedEventMinimumCooldownMinutes | Tiempo mínimo, en minutos, entre el inicio de un evento programado y el permiso para que empiece el siguiente | 4 |
announcementBroadcastWorldOnly | Si los anuncios de eventos se limitan al mundo en el que ocurre el evento | false |
