Advancement Announcer | Custom Advancement Messages icon

Advancement Announcer | Custom Advancement Messages -----

Send custom advancement messages




Advancement Announcer v1.6.0

This is a major update focused on new features, modernizing the plugin's core, and a complete visual overhaul of the GUI.

New Features
  • Custom Model Data (CMD) Support: The plugin's core feature! Announcements can now display items with Custom Model Data.
    • Supports direct integers (e.g., 12345).
    • Supports strings from other plugins like itemsadder:my_item and nexo:my_item.
    • Uses UltimateAdvancementAPI when available, with a fallback to the legacy method.
  • Full Hex Color Support: The plugin now fully supports &#RRGGBB hex color codes in all config messages, GUI elements, and announcements. This is powered by the Kyori Adventure library.
  • Custom Sound System: You can now add a custom sound: "..." to any announcement.
    • Supports all default Bukkit sounds (e.g., ENTITY_PLAYER_LEVELUP) and custom sounds from resource packs (e.g., my.custom.sound).
    • Added a new "Set Sound" GUI (SoundSelectionGUI) with a right-click-to-preview feature.
  • Advanced Player Toggles: The /aa toggle command has been upgraded. Players can now independently mute announcements or just their sounds:
    • /aa toggle announcements
    • /aa toggle sounds
  • New Permissions: Added child permissions advancementannouncer.toggle.announcements and advancementannouncer.toggle.sounds for finer control.

Improvements & GUI Overhaul
  • Complete GUI Overhaul:
    • All GUI menus now have a "filler glass" (GRAY_STAINED_GLASS_PANE) background for a modern, professional look.
    • The EditorGUI layout has been rearranged from a vertical list into a clean 3x2 grid.
    • All item descriptions (lores) in list menus (Presets, AutoAnnounce, etc.) have been re-formatted with colors (e.g., » Style: ...) for better readability.
  • Config Cleanup:
    • Removed static GUI titles (like edit-gui-title) from config.yml to make them hard-coded, simplifying the config.
    • All hard-coded messages (like "no permission") are now properly read from lang-messages.yml.
    • Cleaned up config.yml header comments for better clarity.

Fixes & Performance
  • Fixed Spigot Crash: Removed the mojang-mapped classifier from the UAPI dependency, resolving the critical NoClassDefFoundError crash on Spigot servers. The plugin now works correctly on both Spigot and Paper.
  • Fixed Sound Logic: The playSound handler now intelligently checks for Bukkit enums (like ENTITY_EXPERIENCE_ORB_PICKUP) and custom strings (my.sound) to ensure all sounds play correctly.
  • Fixed Auto-Announce: The ORDERED and RANDOM modes now correctly use the failedAttempts counter, preventing potential infinite error loops.
  • Performance: Optimized TextUtil's hex conversion by making the Regex pattern static final.
  • Stability: Hardened PlayerData, UpdateChecker, and GUIs against potential NullPointerException and IndexOutOfBoundsException errors based on external feedback.
  • Build: Fixed pom.xml license file packaging to correctly include both the plugin's MIT License and UAPI's LGPL requirements.
----------, Nov 14, 2025

Advancement Announcer v1.5.0

v1.5.0 includes structural changes to the preset system, core stability improvements, and revised command usage.

Changes
  • Advanced Preset System: Presets are now configuration sections that can store specific Styles and Icons, not just text messages.
  • Revised Command Structure: The /aa send command has been updated for flexibility:
    • /aa send preset <name> <target> - Sends a preset using its saved configuration.
    • /aa send <style> <icon> <target> <presetName> - Overrides a preset's visual settings while using its message.
  • Improved Tab Completion: Tab suggestions now accurately reflect the new command structure.

Fixes & Improvements
  • Core Handler Refactor: Rewrote the advancement sending logic to resolve "Already exists" errors and implemented smart caching for better performance.
  • Auto-Migration: Legacy configurations are automatically upgraded to the new format, with a safety backup created beforehand.
----------, Nov 10, 2025

Advancement Announcer v1.4.0

This update introduces new features, critical bug fixes, and significant technical improvements.

New Features
  • Join & First Join Messages: You can now welcome players with stylish toast announcements when they join the server!
    • Support for separate First Join messages.
    • Define multiple messages for each category; a random one will be selected each time.
    • Fully configurable via in-game GUI (/aa edit).
  • New Command Structure: Sending manual announcements is now standardized under the /aa send subcommand:
    • Usage: /aa send <style> <icon> <target> <message/preset>
  • New Permission: Added advancementannouncer.toggle permission (default: true). Players can now be restricted from toggling announcements if desired.

Changes & Improvements
  • Internal Refactoring: Major code cleanup. Handlers (GUI, Chat, Commands) are now separated for better stability and maintainability.
  • Improved Update Checker: In-game update notifications now include clickable links to SpigotMC and GitHub.

Bug Fixes
  • Fixed a critical issue that caused an infinite loop (server freeze) when auto-announce was set to RANDOM mode with only one message defined.
----------, Nov 9, 2025

Changelog
[1.3.2] - 2025-11-04

Fixed

  • Fixed advancement display bug where multiple players couldn't receive toast notifications simultaneously
  • Fixed command error when material names are provided in uppercase (e.g., /aa challenge DIAMOND all message)
  • Fixed UpdateChecker infinite hang by adding connection timeouts
  • Fixed potential race condition in update checker during player join events
  • Fixed resource leak in UpdateChecker by properly closing streams
Added
  • Advancement caching system for better performance and concurrent player support
  • URLConnection timeout configuration (5 seconds)
  • Update check completion flag for thread safety
----------, Nov 4, 2025

v1.3.1 Update Notes

Fixes & Improvements
  • Fixed an issue where the config.yml updater would forcibly restore default (example) presets and auto-announce.messages entries on server restart or /aa reload, even if the user had intentionally deleted them. The updater will now only add new, missing configuration keys.

Changes
  • Removed the bstats toggle from config.yml. The bStats service, which collects anonymous usage statistics to aid in development, is now enabled by default and can no longer be disabled.
----------, Oct 19, 2025

Advancement Announcer v1.3 - The GUI Update!

This version introduces a complete GUI overhaul for the in-game editor, making configuration easier.

Key Changes:
  • Full GUI Editor: Create and edit presets & auto-messages entirely through the /aa edit GUI.
  • Deletion Confirmation: A new confirmation screen prevents accidental deletion.
  • Smarter Update Checker: Now correctly compares version numbers (e.g., 1.10 > 1.9) and only notifies for newer versions.
  • Fixes & UX Improvements: Fixed the renaming bug, improved multi-line message previews, and added better input validation.
----------, Oct 9, 2025

This is a major update that brings a full in-game Graphical User Interface (GUI) to manage the plugin. You no longer need to edit the config.yml manually!

Simply use the new /aa edit command to get started.


⭐ New Features
  • Full GUI System (/aa edit):
    • Preset Management: Add, edit, and delete presets directly in-game.

    • Auto-Announce Control: Configure all auto-announcement settings (messages, icons, styles, interval, mode) from the GUI.
  • Automatic Update Checker: Admins with the advancementannouncer.admin permission will be notified on join when a new plugin version is available.

  • Smart Config Updater: Your config.yml is now updated automatically with new options without resetting your existing values or comments.
✨ Improvements
  • GUI Navigation: Added "Back" buttons and ESC key support to easily move between menus.

  • Better Input Flow: The GUI now shows you the current value when editing, and you can type cancel to exit any chat input process.

  • Visuals: The auto-announce menu now displays the actual configured icon for each message instead of a generic paper icon.
Bug Fixes
  • Fixed a critical error that prevented the /aa reload command from working correctly.

  • Added validation to prevent using a . (period) in names, which could corrupt the config.
----------, Oct 9, 2025

V1.1 New Features:
  • Added /aa toggle command: Players can now choose whether they want to receive advancement announcements. Note that player-specific announcements cannot be hidden with this command; it only applies to "all" and auto announcements.

  • Added Configuration Updater class: With this update, your configuration changes will no longer be erased during updates.

  • Added PlayerData.yml: This new file keeps track of players' toggle choices, ensuring personalized settings persist.

  • Added configurable message lines to config: You can now easily edit the messages that players see in their chat.
----------, Apr 5, 2025

Resource Information
Author:
----------
Total Downloads: 249
First Release: Dec 31, 2024
Last Update: Nov 14, 2025
Category: ---------------
All-Time Rating:
6 ratings
Find more info at altkat.github.io...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings