Eventos de Unión

Desde la versión 2.0 HoupAuth ofrece la carácteristica de ejecutar eventos/acciones cada vez que un jugador ingresa o abandona el servidor.

Aquí te enseñamos como configurar correctamente los eventos.

joins-events.yml

Al ejecutar HoupAuth por primera vez se te generará el archivo joins-events.yml en el directorio /plugins/HoupAuth/ con esta estructura:

joins-events.yml
general:
  enabled: true # Habilita el sistema de eventos, si está en false toda configuración aquí se ignorará.
  allow-silent-commands: true # Si está en false, no se ejecutarán los comandos para los jugadores que tienen activado el ingreso silecioso (houpauth.silentjoin)

groups:
  default:
    value: 100 # Define el valor que tiene el grupo, entre menor valor mayor prioridad.
    clear-chat: true # Si está en true, se limpiará el chat del jugador cuando ingrese al servidor

    notification:       # Envía notificación de la unión del jugador al servidor (jugadores conectados)
      enabled: true
      channel: "chat" # Es el canal por donde se enviarán los mensajes. Opciones: chat, actionbar, title
      message:
        register: "<yellow><player> es el jugador #<number> en ingresar al servidor. Bienvenido!"
        join: "<yellow><player> ingresó al servidor!"
        left: "<red><player> salió del servidor!"

      sound: # Reproduce un sonido
        enabled: true # Habilita sistema de sonidos
        everyone: true # Si está en false, solo se reproduce el sonido de join para el jugador que se une al servidor
        type:
          register: "ENTITY_PLAYER_LEVELUP"
          join: "ENTITY_PLAYER_LEVELUP"
          left: "ENTITY_PLAYER_LEVELUP"
        volume: 1.0 
        pitch: 2.5

    messages:
      enabled: true # Habilita el envío de mensajes al jugador que ingresó. Esto es personal, diferente a las notificaciones
      duration: 5 # Define el tiempo que permanecerá visible el titulo y el actionbar en segundos
      register:
        chat: "<green>Welcome to the server!"
        actionbar: "<green>Welcome to the server <player>"
        title: # La primera linea corresponde al titulo y la segunda linea al subtitulo
          - "<green>Welcome to the server!" # titulo
          - "<white>Your password is <password>" # subtitulo
      login:
        chat: "<green>Welcome back <player>"
        actionbar: "<green>Welcome to the server <player>"
        title:
          - "<green>Welcome to the server!"
          - "<gold>New features!"

    commands: # Habilita la ejecución de comandos por evento de unión de jugador.
      # El formato deberá ser: 
      # Comando ejecutado por el jugador: player: <comando>
      # Comando ejecutado desde la consola del servidor: server: <comando>
      # Admite PlaceholderAPI. Y el placeholder <player> como parámetro.
      enabled: false
      register:
        - "server: say Welcome to the server <player>"
        - "player: say Hi!"
      login:
        - "server: say Welcome back <player>"
        - "player: say Hi!"

  # Ejemplo de grupo VIP - requiere permiso houpauth.join.vip
  vip:
    value: 1
    clear-chat: false 

    notification:       
      enabled: true
      channel: "actionbar"
      message:
        register: "<yellow><player> es el jugador #<number> en ingresar al servidor. Bienvenido!"
        join: "<yellow><player> has join the server!"
        left: "<red><player> has left the server!"

      sound:
        enabled: true
        everyone: true 
        type:
          register: "ENTITY_PLAYER_LEVELUP"
          join: "ENTITY_PLAYER_LEVELUP"
          left: "ENTITY_PLAYER_LEVELUP"
        volume: 1.0
        pitch: 2.5

    messages:
      enabled: true
      duration: 5 
      register:
        chat: "<green>Welcome to the server!"
        actionbar: "<green>Welcome to the server <player>"
        title: []
      login:
        chat: "<green>Welcome back <player>"
        actionbar: "<green>Welcome to the server <player>"
        title: []

    commands:
      enabled: true
      register: []
      login:
        - "server: say Welcome back <player>"
        - "player: say Hi!"

Grupos y Valores

joins-events permite cantidad infinita de grupos definidos. Cuando un jugador ingresa al servidor y completa su autentificación, HoupAuth busca el permiso houpauth.join.<grupo> y luego analiza el valor del grupo correspondiente al permiso.

Valores

Cada grupo tiene un valor asignado:

La lógica para esto es la siguiente:

  • Valor alto —> Menor prioridad

  • Valor bajo —> Mayor prioridad

El valor representa el orden de ejecución, de esta manera: primero se ejecuta el valor 1 que el valor 2.

Asegúrese de que dos grupos NO compartan el mismo valor, porque puede generar errores o duplicaciones en la ejecución de los eventos.

Ingreso silencioso y Permisos

Ingreso silencioso

En caso tal de que querer permitir un ingreso donde NO se ejecuten las notificaciones ni el sonido (si es true para todos) deberá asignar el permiso:

houpauth.silentjoin

Esto asegura que los eventos de notificaciones o sonidos no se ejecuten cuando el jugador ingresa o abandona el servidor.

Permiso de evento por grupo especifico

Puede usar un plugin administrador de permisos como LuckPerms para asignarle el permiso a cada jugador o rango.

El formato del permiso es: houpauth.join.<grupo>

Debe asegurarse que el permiso coincida al 100% con el nombre del grupo definido en joins-events.yml

Si el jugador no tiene ningún permiso definido y los eventos están habilitados, HoupAuth ejecutará las acciones correspondiente al grupo "default", si tiene varios permisos seguirá la lógica de los valores.

Ejemplo:

  • Si desea ejecutar los eventos del grupo vip cuando el jugador1 ingresa al servidor entonces deberá asignarle el permiso houpauth.join.vip

Última actualización