EliteScript
EliteScript es un sistema de scripting integral para los Plugins de MagmaGuy, proporcionando opciones avanzadas de personalización 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 personalizados y mobs. El sistema de scripting está construido sobre cinco componentes principales:
- Eventos: Disparadores que inician la ejecución del script (daño, generación, muerte, etc.)
- Condiciones: Requisitos que deben cumplirse para que se ejecuten las acciones
- Acciones: Los comportamientos a realizar (daño, teletransporte, generar partículas, etc.)
- Objetivos: Qué entidades o ubicaciones afectan las acciones
- Zonas: Áreas definidas en el mundo para objetivos y detección
- Tiempos de enfriamiento: Restricciones de tiempo para prevenir spam de scripts
Los Elite Scripts pueden añadirse como archivos de poderes independientes o directamente en archivos de configuración de jefes personalizados.
Ejemplo de inicio rápido
Aquí hay un EliteScript simple que hace que un jefe lance un rayo 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 un rayo al jugador 3 veces (una vez por segundo), con un tiempo de enfriamiento de 60 ticks antes de que pueda activarse nuevamente.
Componentes del script
EliteScript proporciona una amplia personalización a través de su sistema de componentes. Para información detallada sobre cada componente, consulta las siguientes páginas:
Componentes principales
- Eventos - 13 tipos de eventos incluyendo daño, muerte, generación, combate y disparadores basados en zonas
- Acciones - 35 tipos de acciones para crear comportamientos complejos
- Objetivos - 17 tipos de objetivos para seleccionar entidades y ubicaciones
- Condiciones - Condiciones de filtrado y bloqueo con múltiples tipos de verificación
- Zonas - 8 formas de zona (esferas, cilindros, cuboides, rayos, conos, etc.)
- Tiempos de enfriamiento - Sistemas de tiempo de enfriamiento local y global
- Vectores relativos - Posicionamiento y movimiento avanzado
Casos de uso comunes
EliteScript se usa comúnmente para:
- Peleas de jefes por fases: Diferentes patrones de ataque a diferentes porcentajes de salud
- Mecánicas de arena: Daño, buffs o generaciones basadas en zonas en áreas específicas
- Ataques personalizados: Efectos de partículas únicos, proyectiles y ataques de área
- Peligros ambientales: Rayos periódicos, bloques que caen o fuego
- Mecánicas interactivas: Teletransporte, 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 el número de jugadores, ubicación o estado del jefe
Implementación
Los scripts pueden implementarse de dos maneras:
- Archivos de poderes: Crea archivos
.ymlindependientes en~/plugins/EliteMobs/powers/ - Archivos de jefes personalizados: Añade secciones
eliteScript:directamente a las configuraciones de jefes personalizados
Para instrucciones detalladas sobre cómo crear poderes y jefes personalizados, consulta:
Consideraciones de rendimiento
Al crear scripts, ten en cuenta estas mejores prácticas:
- Usa tiempos de enfriamiento para prevenir problemas de rendimiento por scripts de disparo rápido
- Los eventos basados en zonas (ZoneEnterEvent, ZoneLeaveEvent) son computacionalmente costosos - usa zonas pequeñas y tiempos de enfriamiento apropiados
- Usa condiciones de filtrado para reducir verificaciones innecesarias
- Prueba los scripts a fondo antes de desplegarlos en servidores de producción
Próximos pasos
Para comenzar a crear tus propios EliteScripts:
- Revisa la página de Eventos para entender qué puede activar los scripts
- Explora la página de Acciones para ver qué comportamientos puedes crear
- Aprende sobre Objetivos para controlar qué afectan tus acciones
- Estudia los ejemplos en cada página de componentes
- Comienza con scripts simples y añade complejidad gradualmente
