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
Esta configuración permite que los mobs aparezcan en cualquier ubicación, en cualquier mundo, en cualquier momento y durante cualquier fase lunar.
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ás bajo (altura del mapa) utilizado. Ten en cuenta que el valor por defecto de 0 impide que los spawns subterráneos bajen alguna vez por debajo del nivel del mar; establece un valor negativo como -64 si quieres spawns en cuevas profundas.
| 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
Establece la lista de mundos donde puede ocurrir el spawn personalizado. Esta configuración puede omitirse para permitir que todos los mundos sean válidos.
| 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
Establece la lista de entornos de mundo válidos donde puede ocurrir el spawn personalizado. Esta configuración puede omitirse para permitir que todos los entornos sean válidos.
| 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
Pretende establecer la lista de biomas válidos donde puede ocurrir el spawn personalizado.
Esta configuración solía llamarse validBiomes en versiones anteriores de EM.
Actualmente este ajuste no hace nada. EliteMobs escribe la clave en tu archivo de spawn pero nunca vuelve a leerla, así que lo que pongas en ella se ignora y el spawn se comporta como si no hubiera ninguna restricción de bioma.
No dependas de él para mantener a un jefe dentro de un bioma concreto. Usa validWorlds o validWorldEnvironments en su lugar, o restringe el spawn con isSurfaceSpawn / isUndergroundSpawn y los ajustes de nivel Y.
| Key | Values | Default |
|---|---|---|
validBiomesV2 | Biome List | none |
earliestTime
Establece la hora más temprana del juego a la que puede ocurrir el spawn personalizado. A diferencia de los demás ajustes, earliestTime, latestTime y moonPhase se comprueban en el momento en que el jefe está a punto de colocarse, y no mientras se busca la ubicación, así que un spawn cuya ubicación ya se encontró simplemente esperará hasta que se cumplan las condiciones de hora y de luna.
| Key | Values | Default |
|---|---|---|
earliestTime | Long | 0 |
Ejemplo
earliestTime: 0
latestTime
Establece la hora más tardía del juego a la que puede ocurrir el spawn personalizado.
| 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
Especifica si el spawn personalizado puede ocurrir en bloques iluminados por fuentes de luz. Cuando se establece en false, los spawns solo ocurren a nivel de luz 8 o inferior. Cuando se establece en true, los spawns pueden ocurrir a cualquier nivel de luz.
| 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 un jugador al azar entre los que son elegibles para esta aparición. Un jugador se omite si su mundo no está en
ValidWorlds.yml, si está dentro de una instancia de arena o mazmorra, si la aparición de mobs está desactivada en su mundo, o si losvalidWorlds/validWorldEnvironmentsde la aparición excluyen su mundo. Los eventos temporizados omiten además a los jugadores que están dentro de un mundo de mazmorra de EliteMobs. - Se elige un punto candidato a entre 24 y 128 bloques de distancia de ese jugador en los ejes X y Z, en cualquier dirección.
- El nivel Y se resuelve según
isSurfaceSpawn,isUndergroundSpawno, si no se establece ninguno, buscando hacia arriba el primer bloque que tenga suelo sólido debajo y dos bloques de aire encima. - El candidato pasa entonces por las validaciones de más abajo.
Se prueban hasta 100 candidatos, 4 por tick. Si ninguno funciona, EliteMobs espera un minuto y lo vuelve a intentar, así que un evento puede tardar un rato en aparecer de verdad en un servidor concurrido o muy protegido.
Comportamiento de Validación de Spawn
Cuando EliteMobs intenta generar un boss usando una configuración de Spawn Personalizado, realiza varias validaciones automáticas más allá de los campos configurados:
- Proximidad del Jugador: Los bosses no aparecerán dentro de 24 bloques de ningún jugador
- Techo del Nether: Los spawns por encima de Y=127 están bloqueados en la dimensión del Nether
- Seguridad de Bloques: Asegura que los spawns ocurran con suelo sólido y espacio de aire arriba
- Nivel Y: La ubicación final debe estar entre
lowestYLevelyhighestYLevel - Reglas del Juego: Respeta la regla de juego de aparición de mobs del mundo (
spawnMobsen Minecraft 1.21.11 y posteriores,doMobSpawningantes de eso) - Flags de WorldGuard: Verifica los flags
elitemobs-events,elitemob-spawningy el propiomob-spawningde WorldGuard - Estandartes de paz: Si
suppressEventsestá activado enPeaceBanner.yml(lo está por defecto), se omiten las áreas protegidas por un estandarte de paz - 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 validaciones ocurren automáticamente y no pueden desactivarse a través de la configuración.
