Skip to content

Commands & Permissions ​

This page maps the actual command and permission behavior found in plugin.yml and AnnouncementCommand.java.

Main Commands ​

/announcementgui ​

Opens the main menu.

  • aliases: /agui
  • permission: announcementgui.open
  • player only: yes

/announcement open ​

Also opens the main menu.

  • aliases: /announcement, /ann
  • permission: announcementgui.open
  • player only: yes for opening the GUI

/announcement reload ​

Reloads the plugin state.

What it does:

  • reloads config.yml
  • refreshes settings in memory
  • reloads announcement data from storage
  • reconnects sync service if enabled
  • restarts the scheduler

Permission:

text
announcementgui.reload

/announcement list ​

Lists saved announcements in chat.

The output includes:

  • display name
  • short ID prefix
  • target summary
  • enabled or disabled status

Permission:

text
announcementgui.open

/announcement broadcast <id> ​

Forces a broadcast immediately.

The source code accepts more than just a full UUID:

  • full UUID
  • UUID prefix
  • partial display-name match

Permission:

text
announcementgui.broadcast

If sync is enabled, a force broadcast request is also published to other servers through Redis.

Player-Only Behavior ​

The GUI-opening routes require a player. If the console tries to open the GUI, the plugin responds that the command can only be used by a player.

Operational commands such as reload, list, and broadcast are not blocked by the same player-only check.

Permission Nodes ​

announcementgui.open ​

Open the GUI and use the list command.

announcementgui.create ​

Create new announcements from the GUI.

announcementgui.edit ​

Open the edit list and modify existing announcements.

announcementgui.delete ​

Open the delete list and confirm deletion.

announcementgui.reload ​

Reload the plugin state.

announcementgui.broadcast ​

Force broadcast announcements on demand.

announcementgui.admin ​

Full access. This node includes every other permission through plugin.yml.

For a real server, use a split like this:

  • owners or senior admins: announcementgui.admin
  • moderators or event staff: announcementgui.open, announcementgui.create, announcementgui.edit
  • trusted operations staff: announcementgui.broadcast, and optionally announcementgui.reload

Avoid giving delete and reload to too many people unless your workflow already includes review and coordination.

Built with Vue.js and VitePress