Primeros pasos
Esta guía te lleva desde cero hasta tener EventUI funcionando en tu servidor con un evento real y una UI personalizada. Sigue los pasos en orden.
Paso 1 — Instala el plugin
Descarga el archivo eventui-core.jar y colócalo en la carpeta plugins/ de tu servidor. Luego inicia o reinicia el servidor.
Al arrancar por primera vez, el plugin genera automáticamente la siguiente estructura de carpetas:
plugins/
└── EventUI/
├── config.yml ← configuración principal
├── events/ ← aquí van tus archivos de eventos
├── uis/ ← aquí van tus archivos de UI
├── playerdata/ ← progreso de jugadores (no editar)
└── playerstate/ ← variables de estado (no editar)
events/ está vacía al iniciar, el plugin genera un evento de ejemplo llamado example-event.yml para que tengas una referencia del formato.
Paso 2 — Instala el mod cliente
Descarga el archivo eventui-fabric.jar y colócalo en la carpeta mods/ de tu instancia de Fabric 1.21.1. Asegúrate de tener Fabric API instalado — es el único requisito.
No se necesitan mods adicionales. Una vez instalado, el mod se conecta automáticamente al servidor cuando entras a él.
Paso 3 — Configura el modo de UI
Abre plugins/EventUI/config.yml. La configuración más importante al empezar es el modo de UI:
ui:
# "hardcoded" usa la pantalla por defecto de EventUI
# "custom" usa tus propios archivos de la carpeta /uis/
mode: "hardcoded"
events:
# true = los eventos se inician automáticamente
# false = requieren inicio manual con /eventui start
always_active: true
Para empezar, deja mode: "hardcoded". Esto activa la pantalla de eventos incluida en EventUI — funcional desde el primer momento, sin necesidad de crear ningún archivo de UI.
Paso 4 — Crea tu primer evento
Crea un archivo .yml dentro de plugins/EventUI/events/. El nombre del archivo no importa, pero el campo id dentro del archivo sí debe ser único.
Este es un evento mínimo funcional que pide al jugador matar 10 zombies:
id: "mi-primer-evento"
display_name: "Exterminador de zombies"
description: "Elimina zombies para ganar experiencia."
metadata:
icon: "minecraft:rotten_flesh"
difficulty: "easy"
category: "combate"
repeatable: "false"
objectives:
- id: "matar-zombies"
type: KILL_ENTITY
description: "Mata zombies"
target_amount: 10
parameters:
entity_type: "minecraft:zombie"
rewards:
xp: 500
/eventui reload para recargar todos los eventos y UIs en caliente.
Paso 5 — Verifica que funciona
Con el servidor corriendo y el mod instalado en el cliente, entra al servidor y ejecuta:
# Ver todos los eventos cargados
/eventui list
# Ver info de tu evento
/eventui info mi-primer-evento
# Abrir la pantalla de EventUI (tecla K por defecto en el cliente)
/eventui open
Si ves tu evento en la lista, todo está funcionando. Si always_active: true está activado, el evento se inicia automáticamente la primera vez que matas un zombie.
Paso 6 — Tu primera UI personalizada
Una vez que el evento funciona en modo hardcoded, puedes crear tu propia pantalla. Crea un archivo en plugins/EventUI/uis/:
id: "mi-menu"
title: "Mi menú de eventos"
screen_width: 400
screen_height: 300
screen_properties:
pause_game: "true"
elements:
- id: "fondo"
type: IMAGE
x: 0
y: 0
width: 400
height: 300
properties:
texture: "minecraft:textures/block/deepslate_tiles.png"
- id: "titulo"
type: TEXT
x: 200
y: 20
width: 380
height: 20
properties:
content: "§6§lMis Misiones"
align: "center"
shadow: "true"
- id: "btn-cerrar"
type: BUTTON
x: 150
y: 260
width: 100
height: 22
properties:
text: "Cerrar"
action: "close"
Luego actualiza config.yml para usar tu UI:
ui:
mode: "custom"
custom:
screenId: "mi-menu"
fallback: true
Ejecuta /eventui reload y abre la UI con la tecla K en el cliente. Verás tu pantalla personalizada.
true en producción.
Resumen
| Paso | Qué hiciste | Resultado |
|---|---|---|
1 |
Instalaste el plugin | Estructura de carpetas generada automáticamente |
2 |
Instalaste el mod | Cliente conectado al sistema de UI del servidor |
3 |
Configuraste config.yml | Plugin listo con modo de UI y auto-inicio activados |
4 |
Creaste un evento YAML | Misión funcional con objetivo y recompensa |
5 |
Verificaste con /eventui list | Evento visible y activo en el servidor |
6 |
Creaste tu primera UI | Pantalla personalizada abierta con la tecla K |