Saltar al contenido principal

Crear Spawns

webapp_banner.jpg

¿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.

KeyValuesDefault
isEnabledBooleantrue
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.

KeyValuesDefault
lowestYLevelInteger0
Ejemplo
lowestYLevel: 0

highestYLevel

Establece el nivel Y más alto (altura del mapa) utilizado.

KeyValuesDefault
highestYLevelInteger320
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.

KeyValuesDefault
validWorldsString Listnone
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.

KeyValuesDefault
validWorldEnvironmentsEnvironment Listnone
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.

KeyValuesDefault
validBiomesV2Biome Listnone

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.

KeyValuesDefault
earliestTimeLong0
Ejemplo
earliestTime: 0

latestTime

Establece la hora más tardía del juego a la que puede ocurrir el spawn personalizado.

KeyValuesDefault
latestTimeLong24000
Ejemplo
latestTime: 24000

moonPhase

Establece la fase lunar requerida para que ocurra el spawn personalizado.

KeyValuesDefault
moonPhaseSpecial [1]none
Ejemplo
moonPhase: FULL_MOON

Special [1]

Expandir Tabla
Moon PhasePreview
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.

KeyValuesDefault
bypassWorldGuardBooleanfalse

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.

KeyValuesDefault
canSpawnInLightBooleanfalse
Ejemplo
canSpawnInLight: false

isSurfaceSpawn

Establece si el spawn personalizado solo puede ocurrir en la superficie de un mundo.

KeyValuesDefault
isSurfaceSpawnBooleanfalse
Ejemplo
isSurfaceSpawn: false

isUndergroundSpawn

Establece si el spawn personalizado solo puede ocurrir bajo tierra.

KeyValuesDefault
isUndergroundSpawnBooleanfalse
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:

  1. 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 los validWorlds / validWorldEnvironments de 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.
  2. 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.
  3. El nivel Y se resuelve según isSurfaceSpawn, isUndergroundSpawn o, si no se establece ninguno, buscando hacia arriba el primer bloque que tenga suelo sólido debajo y dos bloques de aire encima.
  4. 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 lowestYLevel y highestYLevel
  • Reglas del Juego: Respeta la regla de juego de aparición de mobs del mundo (spawnMobs en Minecraft 1.21.11 y posteriores, doMobSpawning antes de eso)
  • Flags de WorldGuard: Verifica los flags elitemobs-events, elitemob-spawning y el propio mob-spawning de WorldGuard
  • Estandartes de paz: Si suppressEvents está activado en PeaceBanner.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.