Crear Spawns
¿Qué son los Spawns Personalizados?
Los Spawns Personalizados son utilizados por Eventos y refuerzos globales para establecer cómo, dónde y cuándo un evento debe generar al boss para ese evento.
Los eventos y refuerzos globales establecen qué spawn utilizan escribiendo su nombre de archivo.
Crear Spawns Personalizados
Los Spawns Personalizados se encuentran en la carpeta customspawns. Un Spawn Personalizado puede ser utilizado por varios eventos al mismo tiempo, por lo que no necesitas crear uno por evento.
Aquí hay un ejemplo de Spawn Personalizado:
isEnabled: true
validWorldEnvironments:
- NORMAL
- CUSTOM
bypassWorldGuard: false
isSurfaceSpawn: true
Crear un Spawn en Cualquier Lugar
Para crear un spawn que pueda ocurrir en cualquier lugar, tu configuración debería parecerse a lo siguiente:
isEnabled: true
canSpawnInLight: true
Esto elimina la restricción de luz y no añade filtros propios de mundo, hora o luna. Siguen aplicándose la lista de mundos habilitados, el intervalo Y predeterminado, los jugadores cercanos elegibles, los chunks cargados, los flags de protección y las comprobaciones de ubicación descritas más abajo.
Si te interesa crear un spawn más personalizado, sigue leyendo a continuación.
Valores
isEnabled
Establece si el spawn está habilitado.
| Key | Values | Default |
|---|---|---|
isEnabled | Boolean | true |
Ejemplo
isEnabled: true
lowestYLevel
Establece el nivel Y mínimo. El valor predeterminado 0 excluye las cuevas con Y negativa; usa un valor como -64 para permitir búsquedas subterráneas más profundas. Esto no cambia el muestreo Y inicial ni el límite interno de la búsqueda ascendente.
| Key | Values | Default |
|---|---|---|
lowestYLevel | Integer | 0 |
Ejemplo
lowestYLevel: 0
highestYLevel
Establece el nivel Y más alto (altura del mapa) utilizado.
| Key | Values | Default |
|---|---|---|
highestYLevel | Integer | 320 |
Ejemplo
highestYLevel: 320
validWorlds
Filtra los mundos de la selección normal de jugadores, incluidos los eventos temporizados. Omítelo para no añadir un filtro propio; ValidWorlds.yml y las demás comprobaciones siguen aplicándose. Los refuerzos globales eligen jugadores directamente del mundo del invocador e ignoran este filtro.
| Key | Values | Default |
|---|---|---|
validWorlds | String List | none |
Ejemplo
validWorlds:
- WORLD
- FUN_LAND
Si quieres que todos los mundos sean válidos, simplemente no uses la configuración o formáteala así:
validWorlds: []
validWorldEnvironments
Filtra los entornos de mundo de la selección normal de jugadores. Omítelo para no añadir restricciones de entorno. Los refuerzos globales eligen jugadores directamente del mundo del invocador e ignoran este filtro.
| Key | Values | Default |
|---|---|---|
validWorldEnvironments | Environment List | none |
Ejemplo
validWorldEnvironments:
- NORMAL
- NETHER
Si quieres que todos los entornos sean válidos, simplemente no uses la configuración o formáteala así:
validWorldEnvironments: []
validBiomesV2
Establece los biomas donde puede ocurrir el spawn personalizado. Omítelo, o usa una lista vacía, para no añadir ninguna restricción de bioma.
Esta configuración solía llamarse validBiomes en versiones anteriores de EM.
Cada entrada es una clave de bioma. Un nombre sin espacio de nombres, como plains o DEEP_OCEAN, se lee como minecraft:<name>, y no se distinguen mayúsculas de minúsculas. Si alguna entrada no es un bioma registrado, EliteMobs registra una advertencia y desactiva todo el archivo de spawn, por lo que los eventos y refuerzos globales que lo usan no pueden aparecer.
El bioma se lee en el punto candidato elegido al azar, antes de que EliteMobs determine su nivel Y final. Consulta Cómo se elige una ubicación de aparición.
| Key | Values | Default |
|---|---|---|
validBiomesV2 | Biome List | none |
Ejemplo
validBiomesV2:
- minecraft:plains
- desert
earliestTime
Establece la hora mínima del juego para el spawn. Ambos límites son inclusivos. El intervalo no puede cruzar medianoche: si earliestTime supera latestTime, el spawn no ocurre.
Tras encontrar una ubicación, EliteMobs comprueba earliestTime, latestTime y moonPhase cada tick y espera allí hasta que coincidan. Después de esperar no vuelve a comprobar la distancia a jugadores, la luz, el chunk cargado ni WorldGuard. La prueba final del zombi y la comprobación del estandarte de paz sí se realizan antes de colocar al jefe.
| Key | Values | Default |
|---|---|---|
earliestTime | Long | 0 |
Ejemplo
earliestTime: 0
latestTime
Establece la hora máxima del juego para el spawn, incluida. Debe ser mayor o igual que earliestTime.
| Key | Values | Default |
|---|---|---|
latestTime | Long | 24000 |
Ejemplo
latestTime: 24000
moonPhase
Establece la fase lunar requerida para que ocurra el spawn personalizado.
| Key | Values | Default |
|---|---|---|
moonPhase | Special [1] | none |
Ejemplo
moonPhase: FULL_MOON
Special [1]
Expandir Tabla
| Moon Phase | Preview |
|---|---|
NEW_MOON | 🌑 |
WAXING_CRESCENT | 🌒 |
FIRST_QUARTER | 🌓 |
WAXING_GIBBOUS | 🌔 |
FULL_MOON | 🌕 |
WANING_GIBBOUS | 🌖 |
WANING_CRESCENT | 🌘 |
LAST_QUARTER | 🌗 |
bypassWorldGuard
Pretende hacer que el spawn personalizado ignore sistemas de protección como WorldGuard.
Actualmente este ajuste no hace nada. EliteMobs lee la clave de tu archivo de spawn pero nunca actúa sobre ella, así que los flags de WorldGuard se comprueban siempre, independientemente de lo que establezcas aquí. Para permitir que un spawn ocurra dentro de una región protegida, establece en su lugar los flags de WorldGuard correspondientes en esa región.
| Key | Values | Default |
|---|---|---|
bypassWorldGuard | Boolean | false |
canSpawnInLight
Controla la comprobación de luz al seleccionar la ubicación. Con false, el nivel de luz combinado del bloque, incluida la luz del cielo, debe ser 8 o menos. Con true, se omite esta comprobación.
| Key | Values | Default |
|---|---|---|
canSpawnInLight | Boolean | false |
Ejemplo
canSpawnInLight: false
isSurfaceSpawn
Establece si el spawn personalizado solo puede ocurrir en la superficie de un mundo.
| Key | Values | Default |
|---|---|---|
isSurfaceSpawn | Boolean | false |
Ejemplo
isSurfaceSpawn: false
isUndergroundSpawn
Establece si el spawn personalizado solo puede ocurrir bajo tierra.
| Key | Values | Default |
|---|---|---|
isUndergroundSpawn | Boolean | false |
Ejemplo
isUndergroundSpawn: false
Cómo se elige una ubicación de aparición
EliteMobs no rastrea el mundo en busca de un sitio. Elige un jugador conectado al azar y se desplaza desde él:
- Se elige al azar un jugador elegible. Se omite si sus datos de EliteMobs no están cargados, su mundo no está en
ValidWorlds.yml, está dentro de una región de instancia de mazmorra, arena o prueba de clase, su mundo tiene desactivada la aparición de mobs o los filtrosvalidWorlds/validWorldEnvironmentslo excluyen. Los eventos temporizados también excluyen jugadores en mundos de mazmorra de EliteMobs. El modo de juego no excluye al jugador. - El candidato usa desplazamientos de 24 a 127 bloques en X y Z, cada uno con signo independiente. Se rechazan los chunks sin cargar; la búsqueda no carga chunks.
- La Y se determina mediante
isSurfaceSpawn,isUndergroundSpawno, si ninguno está activo, buscando hacia arriba dos bloques de aire sobre un bloque no atravesable. - El candidato pasa entonces por las validaciones de más abajo.
Los refuerzos globales usan todos los jugadores del mundo del invocador en lugar de la lista filtrada del paso 1. Omiten sus comprobaciones de datos cargados, mundo, entorno, instancia y regla de aparición de mobs. Las ubicaciones candidatas siguen pasando por las comprobaciones de bioma, altura, proximidad, luz y WorldGuard.
Se prueban hasta 100 candidatos, uno por tick. Si ninguno sirve, EliteMobs espera un minuto y reintenta. La Y inicial se toma entre 0 y 255. La búsqueda ascendente genérica empieza en ese valor y termina en highestYLevel o dos bloques por debajo del límite de construcción del mundo, lo que sea menor. La búsqueda subterránea descendente termina en Y=-63 incluso con un lowestYLevel menor. Los modos de superficie y subterráneo tienen búsquedas propias; si ambos están activos, prevalece superficie.
Comportamiento de Validación de Spawn
EliteMobs comprueba los candidatos durante la búsqueda. Cuando la hora y la luna permiten el spawn, realiza la prueba final del zombi y la comprobación del estandarte de paz:
- Proximidad del jugador: Se rechazan candidatos a menos de 24 bloques de cualquier jugador, midiendo la distancia tridimensional
- Techo del Nether: Los spawns por encima de Y=127 están bloqueados en la dimensión del Nether
- Seguridad de bloques: La búsqueda subterránea exige suelo sólido; la ascendente genérica, un bloque no atravesable. Ambas exigen dos bloques de aire encima. Superficie usa el bloque más alto de la columna más uno, sin las mismas comprobaciones de espacio libre.
- Nivel Y: La ubicación final debe estar entre
lowestYLevelyhighestYLevel - Reglas del juego: La selección normal de jugadores respeta la regla de aparición de mobs del mundo (
spawnMobsdesde Minecraft 1.21.11,doMobSpawningantes). Los refuerzos globales omiten esta comprobación de selección. - Flags de WorldGuard: Verifica los flags
elitemobs-events,elitemob-spawningy el propiomob-spawningde WorldGuard - Estandartes de paz: Con
suppressEventsactivado enPeaceBanner.yml, como por defecto, una ubicación protegida cancela este intento. Un evento temporizado programa su siguiente evento; esta comprobación no inicia otra búsqueda para el intento actual. - Aparición de prueba final: Justo antes de que aparezca el jefe, EliteMobs genera y elimina de inmediato un zombi vanilla corriente en la ubicación. Si algún otro plugin de protección bloquea ese zombi, la ubicación se descarta y la búsqueda se reinicia
Estas comprobaciones son automáticas. La luz y el estandarte de paz tienen los interruptores descritos arriba; bypassWorldGuard no desactiva las comprobaciones de WorldGuard.
