Saltar al contenido principal

Creando Fases de Jefe

Las Fases de Jefe son una submecánica de los Jefes Personalizados. El sistema detrás de estas fases es tan flexible y poderoso que requiere su propia explicación dedicada para asegurarse de que hagas buen uso de esta función.

¿Cómo funcionan las Fases de Jefe?

Las Fases de Jefe se pueden agregar a cualquier Jefe Personalizado en EliteMobs usando el siguiente formato de configuración:

phases:
- phase_2_boss.yml:0.X
- phase_3_boss.yml:0.Y

Nota: El jefe que generas originalmente (que contiene la entrada phases: listando todas las demás fases) es el jefe de fase 1. El archivo del jefe de fase 1 NO debe listarse a sí mismo en su propia entrada phases:.

La intención básica detrás de esta mecánica es permitir a los administradores cambiar los atributos del Jefe Personalizado durante el combate. Al usar el formato de configuración anterior, puedes cambiar completamente los archivos de configuración de fase a fase, lo que significa que puedes cambiar el 99.99% de los atributos, como poderes, multiplicadores de daño, multiplicadores de salud, tipo de entidad, disfraz, armadura equipada...

Para lograr esto, EliteMobs elimina tu jefe durante el combate y lo reemplaza instantáneamente con la versión de la siguiente fase. El proceso detrás de esto es instantáneo, por lo que tiende a ser bastante fluido, a menos que quieras hacerlo llamativo a propósito. El jefe recibe un período de gracia de combate de 1 segundo después de la transición para garantizar efectos visuales suaves.

Ejemplo

Toma este ejemplo de jefe de fases:

File: phase_1_boss.yml

isEnabled: true
level: 50
healthMultiplier: 10
entityType: STRAY
powers:
- attack_gravity.yml
phases:
- phase_2_boss.yml:0.60
- phase_3_boss.yml:0.30

File: phase_2_boss.yml

isEnabled: true
level: 50
healthMultiplier: 10
entityType: SKELETON
powers:
- attack_gravity.yml
- arrow_fireworks.yml

File: phase_3_boss.yml

isEnabled: true
level: 50
healthMultiplier: 10
entityType: WITHER_SKELETON
powers:
- arrow_rain

Esto constituye un Jefe de Fases válido. Si generas phase_1_boss.yml, generará un Stray con los atributos enumerados anteriormente. Después de ser dañado hasta el 60% de su salud, será reemplazado inmediatamente en la misma ubicación por el Jefe Personalizado formado in phase_2_boss.yml, ya que el archivo de configuración indica - phase_2_boss.yml:0.60 (phase_2_boss.yml es el nombre del archivo para ese jefe personalizado, 0.60 es 60% de salud). Ten en cuenta que el jefe de fase 2 se generará con el 60% de su salud, ya que es cuando cambia a esa fase. El jefe tendrá los poderes enumerados en el archivo phase_2_boss.yml. Una vez que el jefe de fase 2 sea dañado hasta el 30% de su salud, generará el jefe configurado para la fase 3. Ten en cuenta que los poderes para la fase 3 no están relacionados con los anteriores; puedes cambiar completamente los poderes entre fases, al igual que casi todos los demás atributos.

Avanzado

Mecánicas heredadas

Aquí hay una lista de cosas que no cambian de fase a fase:

  • El primer Jefe de Fases en la cadena determina por qué fases pasará el jefe, lo que significa que no debes poner una entrada de fases para los otros jefes en la fase.

  • La tabla de amenazas / tabla de daño permanece igual, lo que significa que la distribución de botín y el sistema de aggro avanzado no se ven afectados por un cambio de fase.

  • El cambio de fases se basa en el % de salud perdida, que se conserva de fase a fase. Esto significa que si tu jefe está configurado para entrar en la fase 2 al 50% de salud, el jefe que aparecerá para reemplazar al jefe de fase 1 seguirá estando al 50% de salud. Esto también significa que cada fase puede tener cantidades completamente diferentes de salud sin que cause problemas.

  • Los Jefes de Fases vuelven a la Fase 1 si son curados de vuelta a la salud completa a través del sistema predeterminado de regeneración de jefe fuera de combate.

  • Los Jefes de Fases que también son Jefes Regionales comparten el mismo radio de correa y mecánica de tiempo de espera en todas las fases, y reaparecerán como el jefe de fase 1 después de que finalice el temporizador de reaparición. El tiempo de reutilización de reaparición y otras configuraciones de jefe regional siempre se toman del archivo de configuración del jefe de fase 1.

Ubicaciones de Generación Específicas de Fase

Por defecto, los jefes permanecen en su ubicación actual al hacer la transición entre fases. Sin embargo, puedes hacer que un jefe se teletransporte a una ubicación específica al entrar en una fase usando la configuración phaseSpawnLocation:

File: phase_2_boss.yml

isEnabled: true
level: 50
healthMultiplier: 10
entityType: SKELETON
powers:
- attack_gravity.yml
- arrow_fireworks.yml
phaseSpawnLocation: world_name,100,64,100,0,0

También puedes teletransportar al jefe mientras lo mantienes en el mismo mundo:

phaseSpawnLocation: same_as_boss,100,64,100,0,0

Esto es útil para crear transiciones de fase dramáticas donde el jefe se teletransporta a una arena o ubicación diferente.

Advertencias

Aquí hay una lista de mecánicas que funcionan de una manera que puede ser inicialmente contraintuitiva:

  • Si un Jefe de Fases es asesinado durante cualquier fase, soltará el botín de esa fase. Esto significa que si alguien logra matar a un jefe de fases demasiado rápido (de un golpe), realmente morirá y soltará el botín que está configurado para ese archivo de jefe, que puede no ser necesariamente la fase final. Puedes solucionar esto configurando la tabla de botín para que sea la misma en todos los archivos de jefe para este jefe de fases, o asegurándote de que tus Jefes de Fases tengan suficiente HP hasta el punto en que sea imposible matarlos en solo unos pocos golpes. Alternativamente, puedes tener tablas de botín especiales para personas capaces de saltar fases.

  • Dado que los Jefes de Fases en realidad hacen que los Jefes Personalizados se generen durante el combate, harán toda su rutina de generación cuando se generen. Por lo tanto, ten cuidado cuando se trata de mensajes de generación y comandos que se ejecutan al generar. Además, los jefes de fases no mueren si cambian de fase, simplemente son intercambiados por otra cosa. Esto significa que los comandos que se ejecutan al morir solo se ejecutarán para el último Jefe de Fases, o si el jugador logra saltar una fase infligiendo suficiente daño. Los comandos que se ejecutan al generar se pueden usar para engancharse a los cambios de fase. Nota: El mensaje de generación no se enviará cuando el jefe se reinicie a la fase 1 debido a regenerarse a salud completa. Sin embargo, los mensajes de generación SÍ se envían al hacer la transición a las fases 2, 3, etc. durante el combate, y cuando los jefes regionales reaparecen después de su tiempo de reutilización.

  • Los jefes de fases pueden venir montados o dejar de estar montados entre fases. Si el jefe de fases es asesinado antes de que la montura esté muerta, la montura persistirá hasta la siguiente fase. Si el jefe se regenera de vuelta a la salud completa, la montura se elimina y el jefe se desmonta, a menos que esté configurado para montar una entidad durante la fase 1.

  • Dado que se generan nuevos Jefes Personalizados entre fases, la mecánica de generación única se reinicia entre fases y en curaciones completas.

Consejos y trucos

  • Puedes usar el hecho de que el equipo y los tipos de entidad se pueden cambiar durante el combate para hacer que el jefe se vea más y más (o menos y menos) peligroso durante la pelea.

  • Si bien es posible, a menos que haya un objetivo de diseño específico en mente, probablemente sea mejor que los poderes que tiene el Jefe de Fases no cambien demasiado drásticamente entre fases, ya que es más probable que los jugadores disfruten de una progresión que se sienta natural durante la pelea.

  • Puedes usar comandos onSpawn para ejecutar comandos entre fases.

  • Puedes establecer música diferente para cada fase usando la opción de configuración song. La música cambiará automáticamente cuando el jefe entre en una nueva fase.

  • Las fases se pueden usar para cambiar el jefe del modo cuerpo a cuerpo al modo a distancia y viceversa.

  • Los Jefes de Fases se construyeron para ser jefes resistentes con mucho HP. Generalmente se sirven mejor como encuentro de jefe final para mazmorras o como grandes Jefes del Mundo.

  • Al diseñar encuentros, ten en cuenta que es posible que los refuerzos no sean eliminados por los jugadores entre fases.

  • Los jefes pueden tener cualquier cantidad de fases que desees, pero cuantas más fases tengan, más salud necesitarán para que cada fase importe.

Integración de API

Para desarrolladores de plugins: EliteMobs dispara un evento ElitePhaseSwitchEvent cuando un jefe hace la transición entre fases. Este evento se puede usar para crear comportamientos o efectos personalizados durante las transiciones de fase:

@EventHandler
public void onPhaseSwitch(ElitePhaseSwitchEvent event) {
CustomBossEntity boss = event.getCustomBossEntity();
PhaseBossEntity phaseBoss = event.getPhaseBossEntity();
// Tu lógica personalizada aquí
}