-
Notifications
You must be signed in to change notification settings - Fork 0
DSL Overview
DarkBladeDev edited this page Feb 21, 2026
·
2 revisions
Un evento se define como un YAML con la raíz event:.
event:
id: my_event
trigger:
type: interval
every: 60s
conditions:
c1:
type: players_online
min: 5
scope:
type: chunk_radius
radius: 1
target:
strategy: random_loaded_chunk
expansion:
enabled: true
max_radius: 4
step: 1
interval: 20t
flow:
nodes:
- action: broadcast
message: "&eEvento {event_id} iniciado"
- delay: 5s
- action: clear_weather
variables:
event_id:
type: string
scope: local
initial: "my_event"-
event.id: identificador del evento. -
event.trigger: cómo se dispara el evento. -
event.conditions: condiciones para permitir iniciar el runtime. -
event.scope: conjunto de chunks que el runtime bloquea. -
event.target: cómo elegir chunk objetivo si el trigger no aporta ubicación. -
event.expansion: expansión progresiva de locks del runtime. -
event.flow: secuencia de ejecución (nodos). -
event.variables: variables por evento (locales/globales) y valores iniciales.
Muchas propiedades aceptan valores dinámicos mediante:
- Reemplazo en texto:
{var}o${var}(ver Variables). - Expresiones MVEL:
= <expresión>.
Ejemplo:
- action: log
message: "Kills actuales: {kills}"
- action: set_variable
key: kills
value: "= (kills == null ? 0 : kills) + 1"Para el esquema completo: Referencia DSL
CustomEventEngine • Paper/Spigot API 1.20+ • Java 21