EliteScript
EliteScript es un sistema de scripting completo para los plugins de MagmaGuy, que proporciona opciones de personalización avanzadas para crear comportamientos dinámicos para jefes y otras entidades en Minecraft.
Descripción general
EliteScript permite a los administradores de servidores crear comportamientos complejos basados en eventos para jefes y mobs personalizados. El sistema de scripting se basa en cinco componentes principales:
- Events: Disparadores que inician la ejecución del script (daño, aparición, muerte, etc.)
- Conditions: Requisitos que deben cumplirse para que se ejecuten las acciones
- Actions: Los comportamientos a realizar (daño, teletransporte, generar partículas, etc.)
- Targets: Qué entidades o ubicaciones afectan las acciones
- Zones: Áreas definidas en el mundo para selección de objetivos y detección
- Cooldowns: Restricciones de tiempo para prevenir spam de scripts
Los Elite Scripts se pueden añadir como archivos de poder independientes o directamente en los archivos de configuración de jefes personalizados.
Ejemplo de inicio rápido
Aquí hay un EliteScript simple que hace que un jefe lance rayos a los jugadores cuando es dañado:
eliteScript:
LightningStrike:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: STRIKE_LIGHTNING
Target:
targetType: DIRECT_TARGET
repeatEvery: 20
times: 3
Cooldowns:
local: 60
global: 20
Este script se activa cuando un jugador daña al jefe, luego lanza rayos al jugador 3 veces (una vez por segundo), con un tiempo de reutilización de 60 ticks antes de que pueda activarse de nuevo.
Componentes del script
EliteScript proporciona una amplia personalización a través de su sistema de componentes. Para información detallada sobre cada componente, consulte las siguientes páginas:
Componentes principales
- Events - 13 tipos de eventos incluyendo daño, muerte, aparición, combate y disparadores basados en zonas
- Actions - 35 tipos de acciones para crear comportamientos complejos
- Targets - 17 tipos de objetivos para seleccionar entidades y ubicaciones
- Conditions - Condiciones de filtrado y bloqueo con múltiples tipos de verificación
- Zones - 8 formas de zona (esferas, cilindros, cuboides, rayos, conos, etc.)
- Cooldowns - Sistemas de tiempo de reutilización local y global
- Vectores relativos - Posicionamiento y movimiento avanzado
Casos de uso comunes
EliteScript se usa comúnmente para:
- Peleas de jefe por fases: Diferentes patrones de ataque en diferentes porcentajes de salud
- Mecánicas de arena: Daño basado en zonas, mejoras o apariciones en áreas específicas
- Ataques personalizados: Efectos de partículas únicos, proyectiles y ataques de área
- Peligros ambientales: Rayos periódicos, bloques cayendo o fuego
- Mecánicas interactivas: Teletransportación, generación de mobs y modificación del mundo
- Comunicación con jugadores: Mensajes, títulos, barras de acción y barras de jefe
- Comportamientos condicionales: Diferentes acciones basadas en cantidad de jugadores, ubicación o estado del jefe
Implementación
Los scripts se pueden implementar de dos maneras:
- Archivos de poder: Cree archivos
.ymlindependientes en~/plugins/EliteMobs/powers/ - Archivos de jefe personalizado: Añada secciones
eliteScript:directamente a las configuraciones de jefes personalizados
Para instrucciones detalladas sobre la creación de poderes y jefes personalizados, consulte:
Consideraciones de rendimiento
Al crear scripts, tenga en cuenta estas mejores prácticas:
- Use tiempos de reutilización para prevenir problemas de rendimiento por scripts de activación rápida
- Los eventos basados en zonas (ZoneEnterEvent, ZoneLeaveEvent) son computacionalmente costosos - use zonas pequeñas y tiempos de reutilización apropiados
- Use condiciones de filtrado para reducir verificaciones innecesarias
- Pruebe los scripts exhaustivamente antes de implementarlos en servidores de producción
Próximos pasos
Para comenzar a crear sus propios EliteScripts:
- Revise la página de Events para entender qué puede activar scripts
- Explore la página de Actions para ver qué comportamientos puede crear
- Aprenda sobre Targets para controlar qué afectan sus acciones
- Estudie los ejemplos en cada página de componentes
- Comience con scripts simples y aumente gradualmente la complejidad
