Docs

Sincronización de Chat

Hytale DiscordSync proporciona una conexión bidireccional y de baja latencia entre el chat en el juego de tu servidor de Hytale y un canal de texto en Discord.

Cómo Funciona la Sincronización

1. Desde el Juego hacia Discord

Cada vez que un jugador envía un mensaje en Hytale:

  • El plugin captura el evento nativo PlayerChatEvent de Hytale.
  • Obtiene el nombre del jugador mediante PlayerRef.getUsername() y el texto del mensaje.
  • Comprueba si el remitente está en la lista de autores ignorados (ignoredAuthors, como mensajes automáticos del sistema).
  • Envía el mensaje a Discord con formato legible:
    markdown
    **NombreJugador**: Contenido del mensaje aquí

2. Desde Discord hacia el Juego

Cuando un usuario escribe en el canal de Discord configurado:

  • JDA captura el evento MessageReceivedEvent.
  • Descarta mensajes enviados por bots para evitar bucles infinitos.
  • Formatea el mensaje según messages.discordToGameFormat (por defecto: §9[Discord] §f%user%: %message%).
  • Lo transmite a todos los jugadores conectados en Hytale utilizando player.sendMessage(Message.raw(...)).

Opciones de Configuración

En config.json:

json
{
  "messages": {
    "discordToGameFormat": "§9[Discord] §f%user%: %message%",
    "gameToDiscordFormat": "**%player%**: %message%"
  },
  "ignoredAuthors": ["System", "Sistema"]
}

Variables Disponibles

  • %user%: El nombre del usuario en Discord.
  • %player%: El nombre del jugador en Hytale.
  • %message%: El texto del mensaje enviado.
Chat Synchronization | Hytale DiscordSync Docs