Elysium es el plugin principal (Core) diseñado específicamente para el servidor BattleWorld RPG. Este plugin centraliza mecánicas esenciales, utilidades de moderación, sistemas de teletransporte y personalización de chat bajo una misma arquitectura eficiente y conectada a MySQL.
elysium_bans. Ideal para redes BungeeCord/Velocity.AsyncPlayerPreLoginEvent) impidiendo que jugadores bloqueados consuman recursos del hilo principal del servidor al intentar entrar.<#hex>) para las pantallas de expulsión./maintenance on/off).elysium.maintenance.bypass (o OP) pueden entrar sin restricciones para continuar trabajando.config.yml.AsyncChatEvent de Paper para asegurar un rendimiento óptimo.%vault_prefix% o %player_name% directamente en el formato.< >)./tpa, /tpaccept y /tpdeny./spawn y múltiples /warp <nombre>, sincronizados con base de datos./money unificado para jugadores y administradores (/money give/take/set/pay).%elysium_balance%, %elysium_baltop_name_1%, %elysium_baltop_balance_1%./kit.kits.yml y cooldowns guardados en MySQL para persistencia BungeeCord./kitadmin create <nombre> para crear kits soltando ítems en un baúl, sin tocar configuraciones YML./msg y /reply con formato personalizable en MiniMessage y sonidos configurables (messaging.sound).elysium.socialspy).broadcasts.yml./heal, /feed, /fly, /gm.| Comando | Descripción | Permiso |
|---|---|---|
/ban <jugador> [motivo] |
Banea permanentemente. | elysium.command.ban |
/tempban <jugador> <tiempo> [motivo] |
Banea temporalmente (ej. 1d, 12h). |
elysium.command.tempban |
/unban <jugador> |
Levanta cualquier sanción. | elysium.command.unban |
/maintenance <on/off> |
Activa/Desactiva el mantenimiento. | elysium.maintenance.admin |
| (Entrada) | Entrar durante mantenimiento. | elysium.maintenance.bypass |
/spawn |
Viajar al punto de aparición. | elysium.command.spawn |
/setspawn |
Establecer el punto de aparición. | elysium.command.setspawn |
/warp <nombre> |
Viajar a un warp. | elysium.command.warp |
/setwarp <nombre> |
Crear un warp. | elysium.command.setwarp |
/tpa <jugador> |
Enviar petición de teletransporte. | elysium.command.tpa |
/tpaccept |
Aceptar petición de teletransporte. | elysium.command.tpaccept |
/tpdeny |
Denegar petición de teletransporte. | elysium.command.tpdeny |
/fly |
Alternar vuelo. | elysium.command.fly |
/heal |
Curar vida y estado. | elysium.command.heal |
/feed |
Llenar barra de hambre. | elysium.command.feed |
/gm <modo> |
Cambiar modo de juego (0, 1, 2, 3). | elysium.command.gamemode |
/money |
Ver tu dinero o el de otro. | elysium.command.money |
/money <pay/give/take/set> |
Gestionar dinero. | elysium.command.money.admin |
/money top |
Ver los jugadores más ricos. | elysium.command.money |
/msg <jugador> <mensaje> |
Enviar mensaje privado. | elysium.command.msg |
/reply <mensaje> |
Responder mensaje privado. | elysium.command.reply |
/kit |
Abrir menú de kits. | elysium.command.kit |
/kitadmin |
Comando base de admin kits. | elysium.command.kitadmin |
El plugin requiere obligatoriamente estar conectado a una base de datos MySQL mediante un pool de conexiones optimizado (HikariCP). Revisa tu config.yml para introducir tus credenciales (host, port, user, password, database).
Optimización de Arranque: El plugin creará y gestionará las tablas necesarias utilizando transacciones en lote (executeBatch()), reduciendo la latencia de inicio al mínimo.
elysium_spawn: Almacena las coordenadas del spawn principal (world, x, y, z, yaw, pitch).elysium_homes: Almacena los hogares (/home) de los jugadores por UUID.elysium_economy: Tabla base para el sistema de economía asíncrona.elysium_kits: Almacena los tiempos de reutilización (cooldowns) de los kits por UUID.¡Crear menús nunca fue tan sencillo! El sistema de menús de Elysium (basado en FacelessMenus) está diseñado para ser 100% compatible con los menús de Axioma. Es decir, si ya tenías menús hechos en Axioma, solo pégalos en la nueva carpeta y funcionarán sin tocar absolutamente nada.
Si quieres crear un menú nuevo, sigue estos pasos explicados para principiantes:
Ve a la carpeta plugins/Elysium/menus/. Crea un archivo de texto nuevo y ponle el nombre que quieras, por ejemplo tienda.yml. El comando para abrirlo dentro del juego será el nombre del archivo: /menu tienda.
Abre tu archivo tienda.yml y empieza escribiendo el título de la ventana y su tamaño:
menu_title: "<#0097D8>Mi Tienda Genial" # El texto que sale arriba del cofre (Acepta colores HEX)
size: 27 # Tamaño del menú. Debe ser múltiplo de 9 (9, 18, 27, 36, 45, o 54)
A continuación, escribe items: y debajo puedes ir poniendo todos los objetos que quieras. Aquí tienes una plantilla para que la copies, pegues y modifiques a tu gusto:
items:
boton_comprar: # Esto es solo un nombre interno, ponle como quieras
slot: 13 # El espacio en el que va a ir (del 0 al tamaño que pusiste menos 1)
material: "DIAMOND" # ¿Qué objeto es? (Ej: DIAMOND, STONE, IRON_SWORD)
display_name: "<#83CA16>¡Comprar 1 Diamante!" # Nombre visible del ítem
lore: # La descripción que sale al pasar el ratón por encima
- "&7Pulsa aquí para recibir"
- "&7tu diamante gratis."
- ""
- "&e¡Hola %player_name%!" # ¡Puedes usar variables de PlaceholderAPI!
# Acciones que ocurren cuando el jugador le da click al ítem:
click_commands:
- "[console] eco give %player% 100" # Ejecuta un comando desde la consola
- "[player] spawn" # Hace que el jugador ejecute un comando
- "[message] <#83CA16>¡Toma tu regalo!" # Le manda un mensaje al chat
- "[sound] ENTITY_PLAYER_LEVELUP" # Suena un sonido (nombres de sonido de Minecraft)
- "[close]" # Cierra el menú al terminar
Cabezas de Jugadores:
Si en material: pones "HEAD-%PLAYER_NAME%", el ítem será la cabeza real del jugador que esté mirando el menú.
Cabezas Personalizadas (Custom Heads):
Si tienes el código Base64 de una cabeza de internet (como las de Minecraft-Heads), puedes ponerlo así:
material: "BASEHEAD-eyJ0ZXh0dXJlcyI6... (todo el código)"
Copiar el mismo ítem en varios huecos (Slots):
Si quieres hacer un borde de cristal, en lugar de copiar el ítem 20 veces, usa slots (en plural) y pon los números entre corchetes:
slots: [0, 1, 2, 3, 4, 5, 6, 7, 8]
Botón para abrir otro menú:
En tus click_commands, pon [openmenu] nombre_del_archivo. Ejemplo: [openmenu] reglas (cerrará el actual y abrirá el archivo reglas.yml).
Cobrar dinero por dar click:
Si quieres que el botón cueste dinero real del juego, añade este bloque justo encima de click_commands:
click_requirement:
type: "has_money"
amount: 500.0 # Precio en dinero
deny_commands: # Qué pasa si el jugador NO tiene esos 500
- "[message] <#D92625>No tienes dinero suficiente, ¡pobre!"
- "[sound] ENTITY_VILLAGER_NO"
Elysium cuenta con su propio módulo integrado de PlaceholderAPI (elysium). A continuación se detallan las variables que puedes usar en menús, hologramas, Scoreboards, etc.
| Placeholder | Descripción | Ejemplo de Salida |
|---|---|---|
%elysium_balance% |
Muestra el dinero en número puro (sin símbolo). | 1500.50 |
%elysium_balance_formatted% |
Muestra el dinero incluyendo el símbolo ($). |
$1500.50 |
%elysium_baltop_name_<N>% |
Nombre del jugador en el Top <N>. |
fac3l |
%elysium_baltop_balance_<N>% |
Saldo (puro) del jugador en el Top <N>. |
1500.50 |
%elysium_baltop_balance_formatted_<N>% |
Saldo (formateado) del jugador en el Top <N>. |
$1500.50 |
Nota: Reemplaza
<N>por un número del 1 al 10 (ej.%elysium_baltop_name_1%).