Theme
Overview ​
AnnouncementGUI is a Paper plugin for creating, editing, scheduling, and broadcasting announcement panels through an in-game inventory GUI. Instead of managing flat chat messages in config files, staff can operate the plugin directly inside Minecraft and keep the output structured.
What the Plugin Does ​
AnnouncementGUI combines five responsibilities:
- create announcements from an inventory-based menu
- edit or delete announcements without restarting the server
- schedule automatic broadcasts using a per-announcement interval
- render the message as a styled panel, not just plain chat lines
- optionally sync changes across multiple Paper servers through Redis
Who It Is For ​
The plugin fits best when you want any of the following:
- a staff-friendly announcement workflow
- a cleaner panel presentation than standard prefix-and-message chat
- different announcements per server, per server group, or for an entire network
- a way to update announcements from inside the game instead of manually editing files
Core Capabilities ​
Inventory GUI management ​
The plugin ships with a main menu for create, edit, and delete flows. Each editor action is exposed through clickable inventory items, and text input is collected through chat prompts.
Structured panel output ​
Each announcement can contain:
- an internal name
- a panel title
- description lines
- body lines
- an interval in seconds
- target type and target values
- enabled or disabled status
Network-aware targeting ​
The source code supports these target modes:
LOCALSERVERSERVERSGROUPGLOBAL
Those modes decide where the announcement is allowed to broadcast.
Redis-based sync ​
When sync.enabled is true and Redis is configured, the plugin can publish and receive these remote events:
- upsert announcement
- delete announcement
- force broadcast request
This allows multiple servers to stay aligned without manually copying files after each change.
Platform Requirements ​
- Paper
1.21.x - Java
21 - Maven for local builds
- Redis only if you want cross-server sync
Files You Should Expect ​
After the plugin is installed, the main files are:
text
plugins/AnnouncementGUI/config.yml
plugins/AnnouncementGUI/announcements.ymlconfig.yml stores server identity, sync, scheduler, panel format, and GUI titles. announcements.yml stores the actual announcement records.
Recommended Reading Order ​
If you are setting up the plugin for the first time, use this order:
If the plugin is already running and you only need an exact command or permission, jump to Commands & Permissions.
