Saltar al contenido principal

Crear Refuerzos Personalizados

Si te interesa invocar elites durante el combate para reforzar a un boss, esta guía cubre eso en detalle.

Pasos para crear un boss personalizado:

  1. Crea tu boss personalizado principal que invocará a tu boss personalizado
  2. Crea un boss personalizado para los refuerzos. Ten en cuenta que los bosses personalizados pueden ser más fuertes que los mobs vanilla, pero también pueden ser más débiles.
  3. Añade la línea de refuerzo correcta al archivo de configuración

Crear la línea de refuerzo

Supongamos que tienes un boss personalizado con este formato:

isEnabled: true
entityType: ENDER_DRAGON
name: $eventBossLevel &eBinder of Worlds
level: 200
powers:
- ender_dragon_arrow_bombardment.yml

Y quieres añadirle refuerzos. Así es como podría verse uno de esos refuerzos:

- summonType:ON_COMBAT_ENTER
filename: binder_of_worlds_phase_1_parkour_reinforcement.yml

Y para hacerlo válido, añádelo a la lista de powers:

isEnabled: true
entityType: ENDER_DRAGON
name: $eventBossLevel &eBinder of Worlds
level: 200
powers:
- ender_dragon_arrow_bombardment.yml
- summonType: ON_COMBAT_ENTER
filename: binder_of_worlds_phase_1_parkour_reinforcement.yml

El refuerzo ya está añadido a la entidad del boss. Sin embargo, como puedes ver, hay varias opciones aquí que puedes personalizar. Vamos a verlas.

Todas las opciones de Refuerzo Personalizado

Consejo: También puedes usar EliteScript para invocar refuerzos, más sobre eso aquí.

summonType

Este es un campo obligatorio. Establece cuándo debe aparecer el refuerzo.

KeyValuesDefault
summonTypeSpecial [1]none (mandatory)
Ejemplo
summonType: ON_HIT

Special [1]

KeyDescription
ONCEAparece el refuerzo una sola vez, la primera vez que se golpea al boss. (puede depender de una probabilidad en %)
ON_HITAparece el refuerzo cada vez que se golpea al boss (puede depender de una probabilidad en %)
ON_COMBAT_ENTERAparece el refuerzo cuando el boss entra en combate (1)
ON_COMBAT_ENTER_PLACE_CRYSTALEspecial: esto es específicamente para colocar cristales del End en las peleas contra dragones cuando el boss entra en combate (1)
ON_DEATHAparece el refuerzo cuando el boss muere
GLOBALAparecen refuerzos para cada jugador en el mismo mundo que el boss. Los refuerzos aparecerán cerca de los jugadores, sin importar lo lejos que estén del boss. El sistema impone un límite de población de 30 refuerzos por jugador conectado para evitar la sobrecarga del servidor. Los refuerzos aparecen cada 10 segundos (200 ticks) mientras el boss esté en combate y no se haya alcanzado el límite. ¡Esto requiere que el campo customSpawn esté establecido para funcionar!

(1) Los bosses entran en combate ya sea cuando los golpean los jugadores o cuando detectan a un jugador dentro de su alcance.


filename

Este es un campo obligatorio, ya que establece qué refuerzo debe aparecer. La única excepción que hace que este campo sea obligatorio es cuando se usa el ajuste summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL, ya que los cristales del End no son elites.

KeyValuesDefault
filenameFilenamenone
Ejemplo
filename: test_boss.yml

Importante: El nombre de archivo debe hacer referencia a un archivo de configuración de boss existente. Si el archivo no existe, el refuerzo será ignorado silenciosamente durante la aparición del boss. Verifica siempre que tus archivos de boss de refuerzo estén correctamente creados y ubicados en la carpeta custombosses.


Viabilidad mínima

summonType: SUMMON_TYPE y filename: filename.yml son suficientes por sí solos para crear un Refuerzo Personalizado. El siguiente ejemplo lo demuestra.

Nota: Las claves de configuración no distinguen entre mayúsculas y minúsculas. Tanto summonType como SUMMONTYPE (o cualquier otra forma de capitalización) funcionarán correctamente.

Ejemplo
isEnabled: true
entityType: ENDER_DRAGON
name: $eventBossLevel &eBinder of Worlds
level: 200
powers:
- ender_dragon_arrow_bombardment.yml
- summonType: ON_COMBAT_ENTER
filename: binder_of_worlds_phase_1_parkour_reinforcement.yml

Sin embargo, si quieres o necesitas algo más complejo, sigue leyendo a continuación para ver qué más puedes hacer con estas opciones.


chance

Este es un campo de configuración opcional creado para complementar las opciones ONCE y ON_HIT de summonType. Representa la probabilidad de que aparezca el Refuerzo Personalizado cuando se golpea a un boss.

KeyValuesDefault
chanceDouble1.0
Ejemplo
chance: 0.5

Representa un 50% de probabilidad de generar un Refuerzo Personalizado.


location

location: x,y,z es un campo de configuración opcional que permite a los administradores desplazar la ubicación del refuerzo un número de bloques. Estos son los conceptos clave que necesitas saber sobre esta opción:

La ubicación de desplazamiento es relativa. Esto significa que location: 0,10,0 generará un boss exactamente 10 bloques por encima del boss, y no en las coordenadas del mundo 0,10,0.

La ubicación relativa es diferente para los bosses regionales. Los bosses regionales siempre usarán su punto de aparición como origen para la ubicación relativa, lo que significa que si sabes dónde está el punto de aparición del boss y cuentas los bloques, puedes hacer que los bosses de refuerzo aparezcan en ubicaciones específicas. La guarida del Binder of Worlds se basa en esto para generar a los bosses de la torre de desafío en posiciones de bloque extremadamente específicas, independientemente de dónde esté el boss dragón.

Los bosses aparecerán dentro de bloques si te equivocas al medir las distancias.

KeyValuesDefault
locationStringnone
Ejemplo
location: 0,10,0

Para un Boss Personalizado no regional, generará el refuerzo exactamente 10 bloques por encima del boss, independientemente de dónde esté.

Para un Boss Personalizado regional, generará el refuerzo exactamente 10 bloques por encima del punto de aparición del boss regional, independientemente de dónde esté el boss.

Nota importante: ¡Este es un campo obligatorio específicamente para summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL!


lightningRod

Es un ajuste especial que solo es útil para summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL. Esto otorga a los cristales del End la capacidad de fulminar el suelo a su alrededor con un retraso. El cristal se marca como un 'cristal de elite' y heredará el objetivo de combate actual del boss. El cristal en sí no es persistente y se eliminará si el boss muere o sale del combate.

No se puede usar con los otros Refuerzos Personalizados, ya que estos deberían depender de powers para este tipo de habilidades.

KeyValuesDefault
lightningRodBooleanfalse
Ejemplo
lightningRod: false

inheritAggro

Es un campo de configuración opcional que hace que los Refuerzos Personalizados hereden los niveles de amenaza del boss.

Esto es especialmente útil cuando quieres que los refuerzos que aparecen ataquen a la persona que está infligiendo la mayor cantidad de daño.

KeyValuesDefault
inheritAggroBooleanfalse
Ejemplo
inheritAggro: false

amount

Es un campo de configuración opcional que establece la cantidad de Refuerzos que aparecen.

KeyValuesDefault
amountInteger1
Ejemplo
amount: 1

spawnNearby

Es un campo de configuración opcional que establece si el Refuerzo Personalizado debe aparecer cerca en lugar de encima del boss o en una ubicación relativa específica.

Aparece dentro de un área de 30x30 bloques (±15 bloques en los ejes X y Z desde el boss). El sistema intenta hasta 30 veces encontrar una ubicación de aparición válida a nivel del suelo, teniendo en cuenta la variación del terreno. Si no se encuentra una ubicación válida después de 30 intentos, el refuerzo aparece en la ubicación exacta del boss.

KeyValuesDefault
spawnNearbyBooleanfalse
Ejemplo
spawnNearby: false

inheritLevel

Es un campo de configuración opcional que establece si el Refuerzo Personalizado debe heredar el nivel del Boss Personalizado al que está reforzando.

KeyValuesDefault
inheritLevelBooleanfalse
Ejemplo
inheritLevel: false

customSpawn

Es un campo de configuración que solo se usa para los refuerzos globales. Usa los ajustes de spawn personalizado para establecer dónde podrán aparecer los refuerzos.

Esto se puede usar para que los refuerzos puedan aparecer en la superficie, en lugares con luz, en biomas específicos, etc. Consulta la página del wiki sobre Spawns Personalizados para más detalles

KeyValuesDefault
customSpawnFilenamenone
Ejemplo
customSpawn: normal_surface_spawn.yml

Armando un gran refuerzo

Vamos a crear un refuerzo de ejemplo usando la mayoría de los campos anteriores:

- summonType: ON_COMBAT_ENTER
filename: test_boss.yml
spawnNearby: true
inheritAggro: true
inheritLevel: true

Esto hace lo siguiente:

  • Crea un Refuerzo Personalizado
  • El Refuerzo Personalizado aparecerá cuando el Boss Personalizado entre en combate (summonType: ON_COMBAT_ENTER)
  • El Refuerzo Personalizado invocado será el de test_boss.yml (filename: test_boss.yml)
  • El Refuerzo Personalizado aparecerá dentro de los 30 bloques de la ubicación actual del Boss Personalizado (spawnNearby: true)
  • El Refuerzo Personalizado heredará el aggro del Boss Personalizado al que está reforzando, lo que significa que atacará al jugador que haya infligido más daño (inheritAggro: true)
  • Independientemente del ajuste en test_boss.yml, el Refuerzo Personalizado tendrá el mismo nivel que el Boss Personalizado al que está reforzando (inheritLevel: true)
- summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL
location: -80,10,0
lightningRod: true

Esto hace lo siguiente:

  • Crea un Refuerzo Personalizado
  • El Refuerzo Personalizado será un Cristal del End que se coloca cuando comienza el combate (summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL)
  • El Cristal del End fulminará el suelo a su alrededor con un retraso (lightningRod: true)
# Ejemplo: Boss que genera secuaces de venganza al morir
- summonType: ON_DEATH
filename: revenge_minion.yml
amount: 3
spawnNearby: true

Esto hace lo siguiente:

  • Crea un Refuerzo Personalizado
  • El Refuerzo Personalizado aparecerá cuando el boss muera (summonType: ON_DEATH)
  • El Refuerzo Personalizado invocado será el de revenge_minion.yml (filename: revenge_minion.yml)
  • Aparecerán tres refuerzos (amount: 3)
  • Los refuerzos aparecerán dentro de los 30 bloques de donde murió el boss (spawnNearby: true)

Ahora para aplicar esto al Boss Personalizado:

isEnabled: true
entityType: ENDER_DRAGON
name: $eventBossLevel &eBinder of Worlds
level: 200
powers:
- ender_dragon_arrow_bombardment.yml
- summonType: ON_COMBAT_ENTER
filename: test_boss.yml
spawnNearby: true
inheritAggro: true
inheritLevel: true
- summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL
location: -80,10,0
lightningRod: true

¡Y listo! Aquí tienes algunos consejos más:

  • Los campos se pueden establecer en cualquier orden, ¡aunque se recomienda tener siempre summonType primero!
  • Esta es una gran mejora respecto al antiguo sistema de refuerzos, que ya no aparece listado. No se recomienda depender de él en este momento, ya que puede dejar de funcionar en el futuro.