Sistema de Prioridad de Anuncios
El Sistema de Prioridad de Anuncios gestiona la importancia de los mensajes de EliteMobs. Lo usan los Jefes Personalizados (mensajes de spawn / muerte / escape y rastreo) y los Eventos Personalizados (startMessage / endMessage).
Los dos usan rutas de código distintas y se comportan de forma diferente en la prioridad 2 — consulta Los eventos personalizados usan una ruta distinta al final de esta página.
Resumen rápido (chuleta):
- Nivel 0: Sin anuncios públicos; solo quienes infligen daño ven los mensajes de muerte configurados
- Nivel 1: Mensajes de chat configurados + rastreo si
showCustomBossLocationestá habilitado - Nivel 2: Idéntico al Nivel 1 para Jefes Personalizados (sin comportamiento distinto)
- Nivel 3: Características del Nivel 1 + anuncios en Discord (requiere DiscordSRV)
Cómo funciona:
Nota: Necesitas configurar tu Jefe Personalizado con este sistema de prioridad si quieres usar un valor distinto al predeterminado. Haz clic aquí para aprender cómo hacerlo.
Nivel 0
Suprime los anuncios públicos del jefe personalizado. Esto significa:
- No se enviarán mensajes de spawn
- No se enviarán mensajes de escape
- Los mensajes de muerte se envían ÚNICAMENTE a los jugadores que dañaron al jefe (no a todo el servidor)
- El rastreo del jefe está deshabilitado incluso si se configura locationMessage
Nivel 1
Si omites announcementPriority, el jefe usa prioridad 0, aunque tenga campos de mensajes configurados. Los mensajes de muerte aún pueden llegar de forma privada a quienes lo dañaron. Establece announcementPriority: 1 o superior para habilitar anuncios públicos.
El Jefe Personalizado podrá enviar mensajes en el chat si están configurados para ello. Enviará mensajes de spawn, muerte y escape si están configurados para tenerlos.
De forma predeterminada, los mensajes de aparición se transmiten a todos los jugadores del servidor. Para enviarlos solo a quienes estén en el mundo del jefe, activa el ajuste de limitar los anuncios al mundo del evento en events.yml (announcementBroadcastWorldOnly: true).
El rastreo del jefe también se habilita en este nivel si showCustomBossLocation está activado. Los jugadores del mundo del jefe reciben un aviso de rastreo clicable cuando aparece; también pueden usar el menú /em. locationMessage personaliza el texto de rastreo, pero es opcional.
Requisitos de rastreo
Para que el rastreo del jefe funcione en la Prioridad 1 o 2, se debe configurar lo siguiente:
- Establecer
announcementPriorityen 1 o superior - Añadir opcionalmente
locationMessagepara personalizar el texto; si falta o está en blanco, se usa$name: $distance blocks away! - Asegurarte de que la configuración del servidor tenga
showCustomBossLocationhabilitado (predeterminado: true)
El locationMessage puede incluir marcadores de posición:
$name- Muestra el nombre del jefe$distance- Muestra la distancia hasta el destino de navegación$location- Muestra las coordenadas del destino de navegación
En el mismo mundo, el destino es el jefe. Entre mundos, el rastreo puede señalar la entrada de una conexión directa por agujero de gusano; si no existe ninguna, muestra el mensaje configurado para otro mundo.
Nivel 2
Para los Jefes Personalizados, el Nivel 2 se comporta de forma idéntica al Nivel 1 — no hay una ruta de código separada para la prioridad 2. Cada tipo de mensaje sigue las mismas reglas en la prioridad 1 y la prioridad 2:
- Los mensajes de spawn se transmiten a todo el servidor a menos que se establezca
announcementBroadcastWorldOnly: true, en cuyo caso se envían solo a los jugadores en el mundo del jefe. - Los mensajes de muerte se transmiten a todo el servidor para cualquier prioridad de 1 o superior.
- Los mensajes de escape siempre se envían solo a los jugadores en el mundo del jefe para cualquier prioridad de 1 o superior.
El rastreo del jefe también se habilita en este nivel si showCustomBossLocation está activado.
Nota: El rastreo requiere una prioridad de anuncio de 1 o superior y showCustomBossLocation; locationMessage es opcional.
Nivel 3
El Jefe Personalizado tendrá el mismo comportamiento que en el Nivel 1, y además enviará mensajes a la sala de Discord configurada para enviar notificaciones sobre EliteMobs. La página sobre cómo configurar esta característica se puede encontrar aquí. Los mensajes en Discord serán los mismos que los mensajes de chat: spawn/muerte/escape.
Los eventos personalizados usan una ruta distinta
Los eventos personalizados (customevents/*.yml) también llevan un announcementPriority, pero sus startMessage y endMessage pasan por una rutina distinta y más simple. Su comportamiento es:
| Prioridad | A dónde va el mensaje | Discord |
|---|---|---|
| 0 | Solo a los jugadores del mundo del evento | No |
| 1 | A todo el servidor, salvo que announcementBroadcastWorldOnly: true en events.yml, en cuyo caso solo al mundo del evento | No |
| 2 | Solo a los jugadores del mundo del evento (la rama de todo el servidor está escrita para la prioridad 1 exactamente) | No |
| 3+ | Solo a los jugadores del mundo del evento | Sí |
Así que para los eventos — a diferencia de los jefes — la prioridad 2 no es lo mismo que la prioridad 1, y las prioridades de 3 o superiores no se emiten a todo el servidor ni siquiera cuando announcementBroadcastWorldOnly es false. El announcementPriority de los eventos vale 0 por defecto.
Tipos de mensajes
Los jefes personalizados pueden tener tres tipos de anuncios:
- Mensajes de spawn (
spawnMessage) - Se envían cuando el jefe aparece - Mensajes de muerte (
deathMessage) - Se envían cuando el jefe es derrotado - Mensajes de escape (
escapeMessage) - Se envían cuando el jefe desaparece/escapa
Cada tipo de mensaje debe configurarse por separado en el archivo de tu jefe. El nivel de prioridad de anuncio controla si estos mensajes se envían y quién los recibe.
doCustomEliteMobsDeathMessages en MobCombatSettings.yml (por defecto true) también debe estar habilitado para los mensajes de muerte del jefe. Una lista deathMessages no vacía tiene prioridad sobre el valor escalar deathMessage. Se omiten las líneas de clasificación cuyo atacante no exista.
Los placeholders son específicos de cada campo. locationMessage admite $name, $distance y $location. Los mensajes de aparición y huida no sustituyen $name; escribe directamente el nombre del jefe. Un único deathMessage admite $players y $playersName, mientras que los placeholders clasificados $damager1name/$damager1Name pertenecen a la lista deathMessages.
Configuración de ejemplo
# Silent boss - only damagers see death message
announcementPriority: 0
deathMessage: '&cThe Sentinel has been defeated!'
# Chat announcements with tracking
announcementPriority: 1
spawnMessage: '&4The Sentinel &chas spawned!'
deathMessages:
- '&aThe Sentinel &2has been slain by $damager1Name!'
escapeMessage: '&eThe Sentinel &6has escaped!'
locationMessage: '&6$name &eis $distance blocks away at $location'
# Discord integration
announcementPriority: 3
spawnMessage: '&4The Sentinel &chas spawned!'
locationMessage: '&6Track $name at $location'