COWMODSКаталог модов
Premium Advancements | Custom Achievements

ВЕРСИИ (25)

release

Premium Advancements | Custom Achievements v3.2.1

v3.2.1
4 окт. 2026 г.271Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Скачать
Что нового
Fixed {description} placeholder in messages.
release

Premium Advancements | Custom Achievements v3.2

v3.2
3 окт. 2026 г.44Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v3.2 ### Features !!! Updated Support to 26.3! From on now please use MINIMUM UltimateAdvancementAPI 3.0.0-beta-4 !!! - **MythicMobs filter for the KILL trigger** - Restrict a `KILL` advancement to a specific MythicMobs mob, faction, and/or level range. MythicMobs is a soft dependency (optional). - Set the mob's internal name via the in-game GUI (slot 20 of the KILL editor) or the web editor (v3.2+ gated), or directly in YAML (`mythicMob`, `mythicFaction`, `mythicMinLevel`, `mythicMaxLevel`). - Mob names and factions are matched case-insensitively; the GUI validates the mob ID against the installed MythicMobs before saving. - Kill detection uses `MythicMobDeathEvent` combined with the standard Bukkit `LivingEntity#getKiller()` tracking, so the killer is resolved reliably even though MythicMobs' own `getKiller()` is not populated at death time. - If MythicMobs is missing, filtered advancements are disabled with a console warning and an in-game admin notification , mirroring the existing WorldGuard `REGION_ENTER` behaviour. - **UltimateAdvancementAPI 3.0.0-beta-4** - Upgraded the hard dependency from `3.0.0-beta-3` to `3.0.0-beta-4` (API-compatible and backward-compatible with beta-3). - **Hide custom tabs from the vanilla advancements GUI** - New `hide-tabs-from-vanilla-gui` config option. When enabled, PremiumAdvancements custom tabs are not shown in the vanilla advancements screen (the L key), while all advancement functionality (progression, rewards, placeholders, webhooks, `/padv` commands) keeps working. Useful for using the plugin purely as an advancement backend and building a custom GUI with plugins like CommandPanels. - **Silent advancement grant** - `/padv give <player> <advancement> --silent` (also `-s`, `--NoMessages`, `--NoFeedback`) now grants without sending the "You have been granted..." notification or the admin success message. - **Minecraft 26.3 support** - Added Paper/Spigot/Purpur 26.3 to the CI compatibility matrix. - **Web editor icon library expansion** - Added ~150 new icons to the icon picker: all wood types (and their stripped variants), copper doors/bars/chains/lanterns/golem-statue with their oxidation and waxed variants, cut copper stairs & slabs, all 23 pottery sherds, leather/iron/golden/diamond horse armor, 10 banner patterns, 19 smithing templates (armor trims + upgrade), 16 colored bundles, 16 colored ghast harnesses, and misc items (spawner, breeze rod, stick). The icon downloader (`scripts/download_icons.py`) now resolves the correct inventory item textures. - **Searchable connection target dropdown** - The "Connection Target" field in the web editor is now a single searchable combobox: type directly in the field to filter the advancement list inline, with the first match auto-highlighted , no more scrolling through a long list. - **Enchanted icon glint** - New "Enchanted Glint" toggle (web editor, and `iconEnchanted: true` in YAML) that renders the advancement icon with an enchantment glint in the vanilla advancements GUI. ### Fixes - **Placeholder condition missing from the create GUI** - The placeholder condition slot (slot 35, the "redstone powder") now appears in the create GUI, not just in the edit GUI of existing advancements. - **`REGION_ENTER` trigger not firing** - The region check now uses the player's destination block (`PlayerMoveEvent#getTo()`) instead of a possibly-stale `player.getLocation()`, and the region handler no longer silently swallows WorldGuard errors (it logs them). Added diagnostic logging. - **`DisposedException` spam / memory pressure on reload** - Replaced per-unit `incrementProgression()` loops with a single batched `incrementProgression(player, N)` call when restoring progression. A `requiredAmount: 350000` advancement previously queued 350,000 async UAA progression updates per player on load/complete - if a `/padv reload` happened during the flush, that burst into thousands of `AdvancementTab is disposed` warnings and allocated large amounts of memory. Each path now sends one update instead of N: - `PlayerDataListener.onPlayerLoadCompleted` - completed/in-progress restoration uses a single call. - `TriggerService.completeAdvancement` / `completeAdvancementForced` - "catch-up to max" uses a single call. - `TriggerService.recheckDependents` - dependent progression sync uses a single call. ---
release

Premium Advancements | Custom Achievements v3.1

v3.1
10 сент. 2026 г.212Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v3.1 ### Features - **COMMAND trigger** - Fires when a player executes a specific command (e.g. `/sethome`, `/home`, `/spawn`). Configure one or more command names via the in-game GUI, the web editor, or directly in YAML (`command: sethome`). - Matching is case-insensitive and ignores the leading slash. A filter matches the exact command name, the full command, or a command with arguments (`sethome` also matches `/sethome home1`). Use `sethome home1` to match only that specific argument. - Leave the filter empty to match any command (useful for "run X commands" counters, controlled via `amount`). - Fully integrated with the existing filter/reward/broadcast/webhook/progression systems. ---
release

Premium Advancements | Custom Achievements v3.0

v3.0
14 авг. 2026 г.328Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v3.0 ### Compatibility - **Minecraft 1.20, 1.20.1, 1.20.2, 1.20.4, 1.20.5, 1.20.6 support** - The plugin now loads and runs on **Paper/Spigot/Purpur 1.20.4+** in addition to 1.21.x and 26.x: - **`plugin.yml`** - `api-version` lowered from `1.21` to `1.20`, which unblocks loading on 1.20.x servers (Paper previously rejected the plugin at startup with `Unsupported API version 1.21` while keeping all modern API behavior on newer servers). - **`pom.xml`** - the plugin is now compiled against `paper-api 1.20.4-R0.1-SNAPSHOT` (the lowest supported version), so any API usage missing on 1.20.4 becomes a compile error instead of a runtime `NoSuchMethodError`/`NoSuchFieldError` on older servers. All Paper-specific code (`AdvancementDisplay`, `PlayerTradeEvent`) already existed in 1.20.4 and remains guarded by runtime checks on plain Spigot. - **`AdvancementTriggerListener`** - `Material.OMINOUS_BOTTLE` (added in 1.20.5) was referenced directly in the static `DRINKABLE_ITEMS` initializer, crashing startup on 1.20.4 with `NoSuchFieldError`. The set is now built at runtime via `Material.getMaterial("OMINOUS_BOTTLE")`, so it is silently skipped on versions where it doesn't exist. - **Java 17 bytecode** - the plugin is now compiled with `--release 17`, so it also loads on Java 17 servers (the standard runtime for MC 1.20 - 1.20.4). MC 1.20.5+ still runs on Java 21+. - **CI** - the compat matrix now covers 1.20, 1.20.1, 1.20.2, 1.20.4, 1.20.5 and 1.20.6 across Paper/Spigot/Purpur (Java 17 image for 1.20 - 1.20.2, Java 21 for 1.20.4+), in addition to the existing 1.21.x and 26.x combinations. ### Fixes - **Plugin failing to load on Minecraft 1.21** - Fixed a `NoSuchFieldError` crash at startup on 1.21 servers: `Material.PALE_OAK_LOG` and other Pale Garden materials (added in 1.21.4) were referenced directly in static field initializers, which threw `java.lang.NoSuchFieldError: Class org.bukkit.Material does not have member field 'org.bukkit.Material PALE_OAK_LOG'` and prevented the plugin from enabling entirely. - **`AdvancementTriggerListener`** - the `LOG_BLOCKS` set (used by `CHOP_TREE` and the GUI validation) is now built at runtime via `Material.getMaterial(name)`, so materials that don't exist on the running server are silently skipped instead of crashing the class initializer. - **`AdvancementManager`** - the same runtime resolution was applied to the block types auto-assigned to `CHOP_TREE` advancements when loading YAML files. - Result: the plugin now loads on 1.21, 1.21.4, 26.1 and 26.2 (Pale Oak simply doesn't count toward `CHOP_TREE` on versions where it doesn't exist). - **Duplicate advancement grants (rewards given multiple times)** - Fixed a critical bug where a player could receive the same advancement (and its rewards) repeatedly. Root cause: the 30-second PLACEHOLDER scheduler task ("Task #86") called `isGranted()` without a `try/catch`. When UltimateAdvancementAPI hadn't finished loading the player yet (asynchronous user loading, aggravated during the UAA 2.8 → 3.0.0-beta-3 migration), it threw a `UserNotLoadedException` that crashed the whole task and left the advancement looking "not granted". On subsequent cycles, `forceComplete()` re-granted and re-distributed rewards in a loop because it had no idempotency guard. - **Scheduler (`PremiumAdvancements`)** - `isGranted()` is now wrapped in a `try/catch` that skips the player's check silently when `UserNotLoadedException` (or any API error) is thrown, instead of crashing the task or treating the advancement as unearned. - **`TriggerService.completeAdvancementForced`** - added an idempotency guard (`alreadyCompleted` check + a database `hasAdvancement` re-check) before granting. Rewards are no longer given when the grant throws an exception; the player is skipped and a later cycle can retry once the user is loaded. - **`TriggerService.completeAdvancement`** - same defensive guards applied to the normal grant path, with `UserNotLoadedException` handled silently (no blocking error log, no reward). ---
release

Premium Advancements | Custom Achievements v2.9

v2.9
3 авг. 2026 г.112Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.9 ### Fixes - **Main-thread SQLite blocking during player quit** - `onPlaytimeQuit`, `onPlaytimeJoin`, and login streak processing now run database operations asynchronously. This eliminates 15-40 second watchdog timeouts when SQLite write contention occurs on the main thread. - `savePlaytimeFor()` - now wraps `setPlayerData()` in `runTaskAsynchronously` - `processStreak()` - entire body runs async, UAA API calls dispatched to main thread via `runTask` - `incrementStreakSync()` / `resetStreakSync()` - DB writes async, in-memory cache updates stay fast - **Removed `Thread.sleep(50)` in `PlayerDataListener.onPlayerQuit()`** - the 50ms main-thread block is eliminated; progress sync now uses `runTaskAsynchronously` - **Text support in placeholder conditions** - `checkPlaceholderCondition()` now supports string comparisons (`==`, `!=`, `contains`) when the placeholder returns text instead of a number. Enables filtering triggers by day name (`%localtime_time_E% == Fri`), player name, biome, etc. - **Spigot compatibility for vanilla advancement display** - Fixed `ClassCastException` on Spigot when reading vanilla advancement display data. Uses `instanceof` check with fallback to Bukkit API (`getTitle()`, `getDescription()`, `getType()`) when Paper API is unavailable. Affects vanilla webhooks and vanilla advancement loading in the editor. ### Fixes - Web Editor - **Advancement disappearing after ID rename** - Fixed `_initTabIds()` stale cache issue. After renaming an advancement ID (e.g. `new_advancement` → `test`), the non-reactive `_idSets` was never re-synced, causing subsequent operations to overwrite `tab.advancementIds` and drop renamed advancements from the sidebar. - **ID rename silently corrupting on duplicate** - Renaming to an ID that already exists in another tab now shows a toast `ID "x" already exists in tab "y"` and safely reverts the ID instead of silently corrupting the advancement object. - **ID rename watch triggering on tab switches** - The rename watcher no longer fires when switching tabs or creating new advancements, preventing false "ID already exists" toasts. - **Toast disappearing too fast** - Fixed timer collision where a new toast inherited the remaining timeout of a previous toast, causing it to vanish almost instantly. - **Toast stacking** - Multiple toasts now stack on top of each other with slide/fade transitions instead of replacing each other.
beta

Premium Advancements | Custom Achievements v2.8

v2.8
30 июл. 2026 г.23Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
WARNING FROM ON NOW YOU NEED [v3.0.0-beta-3](https://modrinth.com/plugin/ultimateadvancementapi/version/3.0.0-beta-3 ) MINIMUM of UltimateAdvancementAPI for PremiumAdvancement V2.8+ to work. # Changelog ## v2.8 ### Features - **UltimateAdvancementAPI 3.0.0-beta-3 migration** - Full migration from UAA 2.8 to 3.0.0-beta-3. - `createAdvancementTab(namespace, background)` - background texture now passed directly (removed from `RootAdvancement`) - `AdvancementDisplayBuilder` - replaces the deprecated v2.8 constructor - `BaseAdvancement` parameter order changed to `(parent, key, maxProgression, display)` - `registerAdvancements(root, Set<BaseAdvancement>)` - replaces varargs overload for 6+ advancements - All runtime reflection fallback code removed (no more `NamespacedKey` workaround) ### Fixes - **`/padv give` error on UAA 3.0** - Fixed `adv.getApiAdvancement() == null` causing `"this advancement is not initialized"` message. The root cause was UAA 3.0 changing `createAdvancementTab(String)` to `createAdvancementTab(NamespacedKey)`, causing silent tab creation failure. - **Empty reward messages** - Reward confirmation messages (`money-received`, `commands-received`) no longer send empty lines to chat when left blank in the language file. - **`/padv take <tab:adv>` not persisting** - Fixed prefix mismatch: when using tab-qualified IDs (e.g. `new_tab:new_advancement`), the DB revoke was using the raw input `"new_tab:new_advancement"` instead of the internal ID `"new_advancement"`. Also added a player-load safety check that auto-corrects any stale UAA grants. ---
release

Premium Advancements | Custom Achievements v2.7.2

v2.7.2
28 июл. 2026 г.43Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.7.2 ### Features - **Vanilla broadcast namespace filtering** - New `vanilla-advancements.namespaces` config section. When enabled, only advancements from allowed namespaces (default: `minecraft:`) receive the custom broadcast. This excludes datapack advancements from being broadcast. Per-advancement overrides in `vanilla-messages.yml` always take priority regardless of namespace filtering.
release

Premium Advancements | Custom Achievements v2.7.1

v2.7.1
27 июл. 2026 г.10Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.7.1 ### Bug Fixes - **Broadcast not visible to completing player** - Fixed an issue where the custom vanilla advancement broadcast was not shown to the player who completed the advancement (others saw it fine). Now uses per-player `sendMessage()` for all players including the completer, and suppresses the vanilla message via `event.message(null)` to avoid duplicates. - **Chat plugin compatibility** - Replaced `Bukkit.broadcast()` with per-player `Player.sendMessage()` in all broadcast paths to bypass chat formatting plugins (ChitChat, DeluxeChat, etc.) that intercept broadcast messages. ---
beta

Premium Advancements | Custom Achievements v2.7

v2.7
27 июл. 2026 г.15Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.7 ### Bug Fixes - **ProGuard obfuscation breaking Paper API & Adventure** - Added `-keep` rules for `io.papermc.paper.**`, `net.kyori.adventure.**`, and `net.kyori.examination.**` in the ProGuard config. Without these, the obfuscator would rename Paper and Adventure classes at runtime, breaking vanilla advancement webhooks, `AdvancementDisplay` title/description retrieval, and `Bukkit.broadcast(Component)` calls. - **Spigot compatibility** - The plugin no longer crashes on startup or during runtime on Spigot servers: - `PlayerAdvancementDoneEvent` webhook listener registered only if the event class exists (Paper-only) - `PlayerTradeEvent` TRADE trigger moved to `PaperCompatibility` listener (registered only on Paper) - `Adventure API` bundled directly in the JAR (unshaded) for Spigot servers that lack it - `sendActionBar(String)` and `Bukkit.broadcast(Component)` wrapped with fallbacks for Spigot - **`vanillaAdv.getDisplay()` null safety** - Added individual null checks and try-catch for `display.title()` and `display.description()` to handle edge cases where Paper API returns null Components.
alpha

Premium Advancements | Custom Achievements v2.6

v2.6
27 июл. 2026 г.13Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.6 ### Features - **Global vanilla advancement broadcast** - New `vanilla-advancements` section in `config.yml`: - `enabled`: Global toggle for the default broadcast message (per-advancement overrides in `vanilla-messages.yml` still work independently via `/padv gui`) - `message`: Default broadcast format for all vanilla advancements, supports all color formats (`&#RRGGBB`, `<gradient>`, `&` codes, MiniMessage), PlaceholderAPI (`%hexnicks_nick_mm%` etc.), and `%player%`/`%advancement%`/`%description%` placeholders - **Namespace-based webhook filtering** — New `webhook.namespaces` section in `config.yml`: - `enabled`: Toggle namespace filtering (default: `true`) - `allowed`: List of namespace prefixes allowed to send Discord webhooks (default: `["minecraft:"]`) - When enabled, only advancements belonging to allowed namespaces send webhooks - Works for both custom advancements (via tab namespace) and vanilla advancements (`minecraft:` prefix) - When disabled, all advancements can send webhooks (v2.5 behavior) - **Placeholder condition for any trigger** — The existing `placeholder`/`placeholderOperator`/`placeholderValue` fields now work as an **optional condition** on any trigger type (not just `PLACEHOLDER`). When set, the advancement only progresses if the PlaceholderAPI placeholder meets the condition. Example: `trigger: BREAK_BLOCK` + `placeholder: %player_y%` + `placeholderOperator: <=` + `placeholderValue: 100` restricts the advancement to below Y=100. Configured via web editor (v2.6+ gated) or directly in YML. ### Bug Fixes - **`UserNotLoadedException` crash on `/padv reload`** - Fixed a major race condition where UAA ( `UltimateAdvancementAPI`) would throw `UserNotLoadedException` when the plugin tried to interact with players too soon after a reload. Added three layers of protection: - **UAA pending guard**: Players are tracked in a pending set on join/reload; `onPlayerMove` silently skips them until UAA finishes loading - **Safety timeout**: Pending entries auto-expire after 15 seconds to prevent players from getting stuck - **Tab show retry**: `showTab()` retries up to 5 times with exponential backoff (10 → 20 → 40 → 80 → 160 ticks) if UAA hasn't loaded the player yet - **`UserNotLoadedException` crash on `PlayerMoveEvent`** - All UAA API calls inside `onPlayerMove` (`isGranted`, `getProgression`, `incrementProgression`) are now fully protected, eliminating spammy stack traces after join or reload - **`NoClassDefFoundError` when WorldGuard not installed** - Fixed `REGION_ENTER` trigger crashing with `NoClassDefFoundError: com/sk89q/worldguard/WorldGuard` on servers without WorldGuard. Added plugin presence guard at method entry and changed `catch (Exception)` to `catch (Throwable)` since `NoClassDefFoundError` extends `Error`, not `Exception` - **ConfigUpdater duplicated `vanilla-tab-order` keys** — Fixed a bug where `vanilla-` prefixed tab order keys (`vanilla_story`, `vanilla_nether`) were incorrectly added alongside the correct keys during config updates. The updater now skips `vanilla-tab-order` (user data, not config schema) and migrates any existing corrupted keys to their correct names. - **Webhook avatar missing for custom advancements** — Fixed `author.icon_url` / `thumbnail.url` in webhook.yml not falling back to the default player avatar when PlaceholderAPI replacements leave unresolved placeholders (e.g., `%skinsrestorer_texture_id_or_steve%`). Now auto-fills with player head if the resolved URL still contains `%`. ---
release

Premium Advancements | Custom Achievements v2.5

v2.5
25 июл. 2026 г.37Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.5 ### Features - **LISTEN_MUSIC trigger** - Fires when a player inserts a music disc into a jukebox. Supports filtering by specific music disc via the existing item/material system. - **PLAYTIME trigger** - Cumulative play time in minutes across all sessions. Checked every 30 seconds. Uses `amount`. - **LOGIN_STREAK trigger** - Consecutive daily logins. Streak resets to 0 if a day is missed. Uses `amount`. - **BIOME_ENTER trigger** - Enter a specific biome (e.g., `MUSHROOM_FIELDS`, `BADLANDS`). Filter by biome name via entity filter. - **VANILLA_ADVANCEMENT trigger** - Chain custom advancements on vanilla advancement completion. Filter by exact advancement key (e.g., `minecraft:story/mine_diamond`). - **REGION_ENTER trigger** - Enter a WorldGuard region (requires WorldGuard on the server). Filter by region name. - **Trigger list condensed** - In-game GUI now shows first 17 triggers with "and X more triggers" count; current trigger moved to bottom. - **53 total triggers** - Up from 48, covering the most requested trigger types. ### Fixes - **PlaceholderAPI support in webhooks** - Custom and vanilla advancement webhooks now resolve PlaceholderAPI placeholders (e.g., nicknames from nick plugins, prefixes from LuckPerms) via `PlaceholderAPI.setPlaceholders()` - **Vanilla broadcast preview colors** - Chat preview after setting a vanilla broadcast message now renders all color formats (`&#RRGGBB`, `<rainbow>`, `<gradient>`, `&` codes) instead of showing raw codes - **GUI lore colors** - "Current broadcast" in the vanilla advancements GUI now displays formatted colors via `AdvancementManager.translateAll()` - **Vanilla GUI navigation** - Added Back button (slot 49) to return to tab selector; empty navigation slots now filled with glass panes - **ConfigUpdater language files** - Language files are now always replaced on version bump (with backup) to apply value changes like new triggers in `trigger-types` ---
release

Premium Advancements | Custom Achievements v2.4

v2.4
20 июл. 2026 г.37Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.4 ### Features #### Custom Broadcast Messages for Vanilla Advancements You can now replace the default vanilla Minecraft advancement chat messages with fully customized broadcasts: - **New GUI** (`VanillaAdvancementsGUI`): When viewing a vanilla tab in `/padv gui`, left-click any vanilla advancement to set a custom broadcast message via chat input - **Per-advancement messages**: Each vanilla advancement can have its own unique broadcast format, stored in `vanilla-messages.yml` - **Full formatting support**: `&#RRGGBB` hex colors, `<gradient>`, `<rainbow>`, `<color:#XXXXXX>`, `&#` codes, and all standard `&` color codes - **PlaceholderAPI** support in custom messages - **Hover tooltip**: `%advancement%` automatically shows the advancement description as a hover tooltip in chat (gray text on hover) - **Placeholders**: `%player%`, `%advancement%` (with hover), `%description%` - **Right-click reset**: Right-click a vanilla advancement in the GUI to remove its custom message and revert to default - **Web editor integration**: Tab order for vanilla tabs synced between editor and in-game GUI ### Fixes - Fixed vanilla tab order keys being written with `vanilla_` prefix instead of proper key names in `vanilla-tab-order` - Fixed `vanilla-messages.yml` merge/persist to load existing file before saving (prevents data loss) - Fixed hover tooltip on `%advancement%` being lost when color formatting is applied
release

Premium Advancements | Custom Achievements v2.3

v2.3
19 июл. 2026 г.19Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.3 ### Features #### Vanilla Advancement Discord Webhooks The plugin now supports sending Discord webhooks for vanilla Minecraft advancement completions (e.g. "Stone Age", " Diamonds!"): - New `webhook.vanilla.enabled` option in `config.yml` (default: `false`) - When enabled, the plugin listens for `PlayerAdvancementDoneEvent` and sends a webhook for every vanilla advancement a player completes - Uses the same webhook URL and formatting from `webhook.yml` - Toggle available in the web editor's **Editor Settings** modal (gear icon) - v2.3+ only - Toggling via the editor and running `/padv apply` will update `config.yml` automatically #### NETHER_ROOF Trigger - Reach the Nether Roof New trigger type that fires when a player reaches the bedrock roof of the Nether (Y=128+): - First-time detection: only triggers once per server session - Available as a selectable trigger in the web editor dropdown (Movement category) - Integrates fully with all existing filter/reward/broadcast systems ### Changes - **WebhookManager** now implements `Listener` to handle vanilla advancement events ### Fixes - **Reward duplication glitch** - Fixed a race condition where rewards/commands could be granted multiple times for a single advancement completion when the async database save hadn't completed before the next trigger fired. Added a `pendingDbSave` tracking set to distinguish "save in progress" from "external reset"
release

Premium Advancements | Custom Achievements v2.2

v2.2
14 июл. 2026 г.54Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.2 ### Features #### DEATH Trigger - Expanded Death Causes & Entity Types The `DEATH` trigger now supports **15 built-in death causes** and **custom entity type matching**: - New causes: `DROWNING`, `VOID`, `EXPLOSION`, `STARVATION`, `POISON`, `WITHER`, `LIGHTNING`, `SUFFOCATION`, `MAGIC`, `FIRE` - `EXPLOSION` matches both `ENTITY_EXPLOSION` (creeper) and `BLOCK_EXPLOSION` (TNT) - Set `deathCause` to any entity type (e.g. `ZOMBIE`, `ENDERMAN`, `CREEPER`) for mob-specific deaths - In-game GUI: left-click cycles through all built-in causes, right-click opens chat input for custom entity/DamageCause - Web editor: "Custom..." option in Death Cause dropdown (v2.2+ only) with text input field #### Broadcast Tooltip (Hover) When a custom broadcast message is configured, `%advancement%` now automatically shows the advancement description as a hover tooltip (same as vanilla `[Title]` behavior). If the template already wraps `%advancement%` in a `<hover:>` tag, the auto-hover is skipped and the user's custom hover is respected. MiniMessage `<hover:show_text:'...'>` and `<click:open_url/run_command/suggest_command:'...'>` tags are now fully parsed via Adventure's native MiniMessage engine, so hover/click works in custom broadcasts alongside colors, gradients, and formatting. ### Fixes - **RAID_WIN triggered for all players** - now only triggers for players in `raid.getHeroes()` (actual raid participants) - **Duplicate broadcast message** - when a custom broadcast is configured, the API's built-in chat announcement is now suppressed (was causing double messages) - **`&e` color code leak in broadcast** - MiniMessage titles with unclosed `<rainbow>` tags no longer capture trailing `&e` from the broadcast template - **Reload crash after duplicate advancement IDs** - `unregisterUI()` now properly cleans up partially-initialized tabs, preventing permanent `AdvancementTab is already initialised` state - **Cross-tab connections** - advancements referencing a target in a different tab now fall back to root with a clear warning, preventing `AdvancementTab is already initialised` crash on reload - **Web editor broadcast preview** - `<hover:>` and `<click:>` tags are now stripped from the preview (rendered in-game only), so they don't appear as raw text
release

Premium Advancements | Custom Achievements v2.1

v2.1
30 июн. 2026 г.73Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.1 ### 🎯 Major Features #### 🎨 MiniMessage & Hex Color Support (Editor + In-Game) All color formats now work **everywhere** - web editor preview AND in-game rendering (L menu, GUIs, broadcasts, commands). In-game rendering supports: - **Legacy `&` codes** - `&0`-`&f`, `&l`/`&o`/`&n`/`&m`/`&k`/`&r` (unchanged, always worked) - **Hex `&#RRGGBB`** - Per-character hex colors rendered with proper `§x§R§R§G§G§B§B` Bukkit format - **MiniMessage named colors** - `<red>`, `<blue>`, `<light_purple>`, `<gold>`, etc. → § codes - **MiniMessage formatting** - `<bold>` → §l, `<italic>` → §o, `<underlined>` → §n, `<strikethrough>` → §m, `<obfuscated>` → §k, `<reset>` → §r - **Gradients** - `<gradient:gold:yellow>text</gradient>` - true per-character color interpolation (visible in L menu). Works with or without closing tag - **Rainbow** - `<rainbow>text</rainbow>` - per-character HSL hue cycling. Works with or without closing tag - **`<color:#RRGGBB>` and `<color:name>`** - Full support for both hex and named MiniMessage color tags Web editor preview: - **Color/Format Picker** - 🖌️ button next to Title and Description fields with 16 color swatches + 6 format buttons ( B/I/U/S/O/R), inserts `&` codes at cursor position - **Live preview** - `mcPreview()` renders all formats (MiniMessage, hex, gradients, rainbows, `&` codes) in editor tabs, sidebar, tree view, tooltips - **Version-gated** - Picker/preview only shown on v2.1+; older versions show plain text - **`expandHex()`** - Short hex `#rgb` auto-expands to `#rrggbb` for correct gradient interpolation - **Discord-safe** - Webhook embeds strip ALL color codes before sending to prevent raw markup in Discord #### 📑 Tab Order (In-Game GUI Sorting) Tabs in the advancement GUI (L key) are now sorted by configurable `tabOrder`: - Each tab has a numeric order value (default 999) - Vanilla tabs sorted via `config.yml` → `vanilla-tab-order` section (story: 1, nether: 2, end: 3, adventure: 4, husbandry: 5) - Changes survive plugin reload; persists from editor save to config #### 🖼️ Tab Root Icon Custom Model Data Tab settings now support `rootIconCustomModelData` for resource pack item variants on the tab root icon. ### ✨ Changes - **Inline command editing** - Click a reward command in the editor to edit it directly, instead of deleting and re-adding - **Icon browser** - Browse and select icons for tab root icon directly from the editor Tab Settings modal - **Color hints** - Title and description fields now show available color format hints - **Color picker popover** - Closes on outside click, follows Minecraft button styling - **Broadcast color preview** - Broadcast message field now has live `mcPreview()` rendering and a 🖌️ color picker with full swatches + format buttons - **Version detection** - Editor correctly gates color picker and v2.1 fields via `isV21Plus` check on `editorVersion` ### 🐛 Fixes - **CRITICAL**: Duplicating an advancement corrupted `tab.advancementIds` - fixed `_syncIds()` dedup and removed `deep: true` from tabs watcher - **CRITICAL**: Action bar / Toast / Announce toggles not persisting after reload - fixed `parseSingleAdvEntry` fallback chain - **CRITICAL**: Empty editor after ID change - removed stale `map[oldId].id === oldId` guard - **CRITICAL**: `mcPreview()` gradient rendering broken - `lerpColor()` now correctly expands 3-digit hex (`#rgb` → `#rrggbb`) via `expandHex()`, applied in `parseColor()` and all hex paths - **CRITICAL**: `mcPreview()` count stack corruption - close handler now only pops gradient/rainbow when the closing tag name matches - **Discord webhook** - Title and description now stripped of all color codes (`&`, `&#RRGGBB`, MiniMessage tags, `§`) before sending, preventing raw markup in Discord embed - Firefox modal bottom overflow - `max-height` now uses `min(85vh, 100dvh - 40px)` for dynamic viewport - Various z-index and modal layout fixes ### 💥 Breaking Changes - None - fully backward compatible with v2.0 data
release

Premium Advancements | Custom Achievements v2.0

v2.0
25 июн. 2026 г.50Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v2.0 ### 🎯 Major Features #### 📑 Multi-Tabs Support Advancements are now organized into multiple tabs, each as a separate `.yml` file in the `Advancements/` folder. - **Tab System** - Each file in `Advancements/` creates one tab in the Minecraft advancement menu (L key) - **Tab Selector GUI** - `/padv gui` now shows a tab selection screen when multiple tabs exist. Click a tab to view/edit its advancements - **Per-Tab Configuration** - Each file has its own `tab.namespace`, `root.icon`, `root.title`, `root.description`, and `root.background` - **Global IDs** - Advancement IDs are unique across all tabs. Commands like `/padv give`, `/padv take`, `/padv list` work globally - **Tab Placeholders** - New placeholders: `%premiumadvancements_tab_completed_<ns>%`, `_tab_total_<ns>%`, `_tab_percent_<ns>%` #### 🔄 Auto-Migration (v1.70 → v2.0) On first startup, if `advancements.yml` and/or `adv-gui.yml` are detected at the root: - **Backup** - Old files are copied to `backups/migration_YYYY-MM-DD_HH-mm-ss/` - **Merge** - A single `Advancements/default.yml` is created combining `adv-gui.yml` (tab config) + `advancements.yml` (advancements) - **Rename** - Old files are renamed to `.migrated` (never deleted) - **Notification** - Admins receive an in-game message with the backup path #### 🌐 Web Editor - Multi-Tab Support The web editor now fully supports multiple tabs: - **Tab Selector** - Dropdown at the top of the sidebar to switch between tabs - **Tab CRUD** - Create, rename, configure, and delete tabs directly from the editor - **Tab Settings** - Configure namespace, title, description, root icon, and background per tab - **Move Between Tabs** - In the Advanced tab of each advancement, a "Tab" dropdown lets you move advancements between tabs - **Version Gating** - Multi-tab features are only visible for v2.0+ data (old v1.70 data shows a single-tab editor) - **JSON Format** - New `{tabs: {namespace: {tab: {...}, advancements: {...}}}}` format for upload/download ### ✨ Changes - `/padv tabs` - New command listing all tabs with namespace + advancement count - `/padv wiki` - New command opening the plugin wiki link - `/padv info <id>` - Now shows which tab the advancement belongs to - `/padv reload` - Now properly reloads all tabs (unregisters and re-registers all) - `/padv apply` - Reload completes in 1 tick instead of 20 ticks (near-instant UI update) - `/padv gui` - Opens the TabSelectorGUI first when multiple tabs exist - GUI: "← Back to Tabs" and "≡ Tabs" buttons in the advancement list - Advancements/ folder auto-created with a `default.yml` resource file if empty - `config.yml` editor section validation no longer checks for `adv-gui.yml`/`advancements.yml` - **45 trigger types** - Added `MANUAL` (command-only) and `PLACEHOLDER` (PAPI-based) triggers - **14+ placeholders** - Added per-tab placeholders (`tab_completed`, `tab_total`, `tab_percent`) - **Web editor** - Custom Minecraft-themed dropdowns and scrollbars now properly applied - **Web editor** - Trust code modal shown on first visit for browser authorization - **Web editor** - Advancement ID changes now properly update the map key in real-time - **Language files** - Added `gui.back-to-tabs`, `help.commands.tabs`, `help.commands.wiki`, PLACEHOLDER input prompts #### 🧩 Vanilla Advancement Integration Minecraft's built-in advancements (Story, Adventure, Nether, End, Husbandry) are now loaded read-only: - **Auto-loaded** - All 125+ vanilla advancements loaded from Bukkit on startup - **Read-only** - Displayed in the web editor but cannot be edited or deleted - **Proper display** - Icons, titles, descriptions, and tree positions extracted via Paper API - **Hidden toggle** - Editor settings gear (⚙ in toolbar) lets you show/hide vanilla tabs in the dropdown - **Connection lines** - Vanilla parent-child tree structure preserved in the editor tree view - **Hidden advancements** - Properly filtered with the eye toggle in tree view - **No file persistence** - Vanilla tabs are never saved to `.yml` files, always reloaded from Bukkit #### 🖥️ Web Editor - Quality of Life - **Editor settings modal** - ⚙ gear button in toolbar opens settings with vanilla tabs ON/OFF toggle - **Cache busting** - Nginx ETag + no-cache headers so editor updates take effect without Ctrl+F5 - **__version__ persistence** - Editor version preserved in saved data so multi-tab mode survives Save → reload - **Tab row layout** - Improved button sizing and alignment in tab selector (⚙, +, vanilla toggle) - **Lock icon** - Vanilla advancements show a read-only lock indicator ### 🐛 Fixes - **CRITICAL**: `AdvancementTab is already initialised` error on reload - now reuses existing RootAdvancement - **CRITICAL**: `/padv gui` tab-filtered GUI not responding to clicks - fixed title collision with unfiltered GUI - **CRITICAL**: `/padv apply` deleting `default.yml` - file cleanup now checks YAML namespace, not just filename - **CRITICAL**: `/padv apply` failing with `DuplicatedException` - initSingleTab now catches all exceptions and falls back to `getAdvancementTab()` - **CRITICAL**: `/padv apply` creating vanilla `.yml` files on each apply - vanilla tabs are now properly flagged and excluded from file saves - **CRITICAL**: Web editor sidebar showed wrong trigger display - fixed Vue rendering with proper :key bindings - **CRITICAL**: Web editor advancement ID renames corrupted the map - now properly updates keys and tab lists - **CRITICAL**: Web editor `applyCustomDropdowns` and `applyCustomScrollbar` were never called - added lifecycle hooks - **File Name** - `saveTabToFile()` removes old files with matching YAML namespace but different filename (e.g. `default.yml` → `premium_advancements.yml`) - Version now correctly shows `2.0` in plugin.yml and PlaceholderAPI expansion - `gui.back-to-tabs` added to `en.yml` and `fr.yml` language files - Missing `help.commands.tabs` added to both language files - ConfigUpdater: Fixed duplicated comments in config.yml (replaced broken comment re-insertion with backup+merge strategy) - ConfigUpdater: No longer creates `adv-gui.yml` on fresh installs (prevented unnecessary migration trigger) - Fresh installs: `Advancements/default.yml` now included as a JAR resource with 41 sample advancements - Vanilla advancement icons now properly display (GRASS_BLOCK fallback replaced with actual Minecraft item icons) - Vanilla advancement tree positions now correctly extracted via NMS reflection ### 💥 Breaking Changes - **File Structure** - Advancements are now in `Advancements/*.yml` instead of `advancements.yml` + `adv-gui.yml` - **Migration** - Automatic on first startup. Old files renamed to `.migrated`. Manual rollback possible from `backups/` - **Paper 1.21.4+** - Plugin now requires Paper 1.21.4+ for the AdvancementDisplay API used in vanilla advancement extraction
release

Premium Advancements | Custom Achievements v1.70

v1.70
20 июн. 2026 г.43Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v1.70 ### 🎯 Major Features #### 🌐 Web Editor (Browser-Based GUI) Run `/padv editor` to get a link to the full-featured browser editor - no local server needed, works via REST API. - **Live Tree View** - Visual advancement hierarchy with real-time positioning, connection lines between nodes, zoom/pan - **Drag & Drop Positioning** - Toggle Move Mode (`✥` button), click an advancement to pick it up, move the mouse to position it in real-time, click again to drop. ESC cancels and reverts to original position - **Undo / Redo** - Ctrl+Z / Ctrl+Y or top-right buttons. Works for both drags and keyboard nudges - **Arrow Key Nudge** - Fine-tune positions with arrow keys (0.5 step, Shift for 1.0) - **Full Creation & Edit Wizard** - Same 5-tab interface (Basic, Trigger, Display, Rewards, Advanced) with dropdowns, tag inputs, icon browser, toggle switches - **Search & Filter** - Filter advancements by name/ID in the sidebar - **Import / Export JSON** - Save and load full advancement presets - **Responsive Layout** - Works on mobile/tablet - **SVG Controls** - All buttons now use centered SVG icons (zoom, reset, eye, move) #### 🔔 Discord Webhook Integration Send customizable Discord embeds when players complete advancements. - Per-advancement toggle in the edit GUI (slot 25) and YAML config - Customizable embed: title, description, color, thumbnail, footer - `%player%` and `%advancement%` placeholders in title/description - Global webhook URL in `webhook.yml` - Works alongside all existing reward types ### ✨ Changes - `/padv editor` - Opens the web editor (generates trust token on first use) - `/padv editor-trust <code>` - Authorizes a browser session for the editor - Webhook toggle in in-game edit GUI (slot 25, below PlayerPoints) - Frame type (TASK/GOAL/CHALLENGE) now correctly displays from `display.frame` in the web editor - **Stats GUI rework** - Player head now shows the actual target skin, recent completions condensed to single slot showing only the most recent, progress display clamped to prevent 101/100 overflow, navigation buttons only show when relevant with proper glass decoration ### 🐛 Fixes - Frame type parsing in web editor: was always showing TASK because `display.frame` was not read - Various web editor UI fixes (button centering, hint layout, responsive breakpoints) ---
release

Premium Advancements | Custom Achievements v1.60

v1.60
24 мая 2026 г.110Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog ## v1.60 ### Major - **No more restart required!!!** Create, edit, delete, or reposition any advancement and run `/padv reload` - it applies instantly. No more waiting for server restarts to see changes. - **Hidden advancements** - new `hidden: true` option. Advancements stay invisible until all `requires` prerequisites are completed. Perfect for secret end-game rewards. - **Connection system** - visually link any advancement to any other with `connection.target`. Create tree branches with clear visual lines instead of everything connecting to root. - **Multi-material support** - specify multiple blocks, items, entities, inputs, or outputs in a single advancement using YAML lists (e.g. break both stone AND deepslate). ### New Trigger - **CHOP_TREE** - breaks any log type automatically (oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, pale oak). ### Changes - Coordinates must now be `>= 0` (both x and y). Negative values are rejected by the API. - Removed all "restart required" warnings from reload command. ### Fixes - Hidden advancement unlock messages no longer leak to chat. - Progress restores correctly on rejoin for multi-requirement triggers. - Circular dependency detection prevents infinite loops. - Various GUI slot ordering, pagination, and shutdown fixes.
release

Premium Advancements | Custom Achievements v1.50

v1.50
12 мая 2026 г.49Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog — v1.50 ## What's New ### PlaceholderAPI Integration 8 new placeholders to display player progress anywhere on your server: | Placeholder | Description | |-------------|-------------| | `%premiumadvancements_completed%` | Total completed advancements | | `%premiumadvancements_total%` | Total available advancements | | `%premiumadvancements_progress_<id>%` | Per-advancement progress | | `%premiumadvancements_completed_<id>%` | Completion status (true/false) | | `%premiumadvancements_percent%` | Overall completion % | | `%premiumadvancements_latest%` | Name of last completed advancement | | `%premiumadvancements_ranking%` | Player rank by completions | ### 25+ New Trigger Types | Trigger | Description | |---------|-------------| | `FISH` | Catch fish | | `BREED` | Breed animals | | `TAME` | Tame animals | | `CONSUME` | Drink potions/milk/honey | | `EAT` | Eat food | | `HARVEST` | Harvest crops | | `TRADE` | Trade with villagers | | `ENCHANT` | Enchant with specific enchantment | | `POTION_EFFECT` | Get a potion effect | | `DEATH` | Die by specific causes | | `DAMAGE_DEALT` | Deal damage | | `DAMAGE_TAKEN` | Take damage | | `JUMP` | Jump | | `DROP_ITEM` | Drop specific items | | `SHEAR` | Shear entities | | `MILK` | Milk cows/mooshrooms | | `ARMOR_EQUIP` | Equip armor pieces | | `SNIFF` | Brush suspicious sand/gravel | | `RIPTIDE` | Use riptide trident | | `RAID_WIN` | Win a raid | | `TARGET_BLOCK` | Hit a target block | | `BELL_RING` | Ring a bell | | `CROSSBOW_SHOT` | Shoot a crossbow | | `FIREWORK` | Launch fireworks | | `GLIDE` | Glide with elytra | | `SWIM` | Swim | | `CLIMB` | Climb | | `SLEEP` | Sleep in a bed | | `FILL_BUCKET` | Fill a bucket | | `EMPTY_BUCKET` | Empty a bucket | | `COMPOSTER_USE` | Use a composter | ### New Commands - `/padv info <id>` — View advancement details and placeholder IDs - `/padv placeholders` — List all available placeholders ### GUI Improvements - Advancement ID now shown in GUI lore for easier identification ### Bug Fixes - Fixed progress not restoring on rejoin for multi-requirement triggers - Fixed mooshroom entity naming (`MUSHROOM_COW` → `MOOSHROOM`) - Fixed `MUSHROOM_COW` entity matching for MILK/BREED/TAME/SHEAR triggers - Fixed sound serialization bugs in BREED trigger GUI - Fixed dot-format sound names across all advancements - Fixed chat input listener issues - Fixed TRAVEL_DIMENSION console error spam - Fixed various database shutdown issues - Many other stability improvements and bug fixes
release

PremiumAdvancements v1.40

v1.40
4 янв. 2026 г.126Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, paper, purpur, spigot
Скачать
Что нового
# 📝 Changelog - Premium Advancements v1.40 ## 🎉 Major Update: 7 New Trigger Types + Critical Fixes! This update introduces **7 brand new advancement triggers**, bringing the total to **12 trigger types**, plus critical bug fixes and quality-of-life improvements! --- ## 🐛 Critical Bug Fixes ### Navigation & UI - ✅ **Fixed Previous Page button** not working in `/padv gui` - players can now navigate backwards through pages - ✅ **Fixed page navigation state management** - page position is now properly maintained when reopening GUI - ✅ **Fixed pagination display** - current page and total pages now show correctly ### Travel Distance Tracking - ✅ **Fixed TRAVEL_DISTANCE trigger saving/loading** - distance and travel mode now persist correctly across server restarts - ✅ **Fixed ELYTRA mode** counting walking movement - elytra flight is now properly detected and tracked separately - ✅ **Fixed BOAT mode** counting walking movement - vehicle movement is now correctly isolated from walking - ✅ **Fixed distance not resetting** after completion - players can now repeat travel achievements properly ### Configuration System - ✅ **Fixed language file updates** not preserving user customizations - merge system now correctly keeps user edits - ✅ **Fixed config merge recursion** issues - deep nested sections now update properly without corruption - ✅ **Fixed backup system** creating unnecessary backups - only creates backups when actual changes are detected ### Advancement Registration - ✅ **Fixed Dynamic Advancement Registration** - newly created advancements are now immediately functional without restart - ✅ **Fixed UI initialization order** - prevents "advancement not initialized" errors --- ## ⭐ New Features ### 🆕 Advanced Triggers (7 NEW!) Track items crafted by players in crafting tables or inventory crafting. **Features:** - ✅ Detects crafting table and 2x2 inventory crafting - ✅ Supports shift-clicking (mass crafting) - ✅ Works with vanilla and custom items (ItemsAdder/Oraxen) - ✅ Cumulative tracking across sessions **Example:** ```yaml master_crafter: title: "Master Crafter" description: "Craft 64 diamond pickaxes" icon: DIAMOND_PICKAXE trigger: CRAFT_ITEM item: DIAMOND_PICKAXE amount: 64 ``` --- ### 🔥 2. SMELT_ITEM Trigger Track items smelted in furnaces, blast furnaces, and smokers. **Features:** - ✅ Works with Furnace, Blast Furnace, and Smoker - ✅ Detects the output item (smelted result) - ✅ Supports item filtering - ✅ Tracks cumulative smelting **Example:** ```yaml iron_smelter: title: "Iron Smelter" description: "Smelt 100 iron ingots" icon: IRON_INGOT trigger: SMELT_ITEM item: IRON_INGOT amount: 100 ``` --- ### ⚒️ 3. ANVIL_USE Trigger Track anvil usage including renaming, repairing, and combining items. **Features:** - ✅ Detects all anvil operations - ✅ Optional filtering by input item - ✅ Optional filtering by output item - ✅ Perfect for repair/enchant challenges **Example:** ```yaml item_repairer: title: "Item Repairer" description: "Repair items in an anvil 10 times" icon: ANVIL trigger: ANVIL_USE amount: 10 ``` --- ### 🪨 4. GRINDSTONE_USE Trigger Track grindstone usage for removing enchantments. **Features:** - ✅ Detects enchantment removal - ✅ Optional item filtering - ✅ Tracks each grindstone transaction **Example:** ```yaml disenchanter: title: "Disenchanter" description: "Remove 5 enchantments using a grindstone" icon: GRINDSTONE trigger: GRINDSTONE_USE amount: 5 ``` --- ### ✨ 5. ENCHANT_ITEM Trigger Track enchanting at enchantment tables. **Features:** - ✅ Detects enchantment table usage - ✅ Filter by item type (optional) - ✅ Filter by enchantment type (optional) - ✅ Set minimum enchantment level - ✅ Perfect for progression systems **Example:** ```yaml master_enchanter: title: "Master Enchanter" description: "Apply Sharpness III or higher" icon: ENCHANTING_TABLE trigger: ENCHANT_ITEM item: DIAMOND_SWORD ``` --- ### 🌐 6. ENTER_DIMENSION Trigger Track when players enter the Nether or End dimensions. **Features:** - ✅ Detects dimension changes - ✅ Prevents duplicate triggers on teleport loops - ✅ Supports NETHER and END dimensions - ✅ Perfect for exploration achievements **Example:** ```yaml nether_explorer: title: "Nether Explorer" description: "Enter the Nether for the first time" icon: NETHERRACK trigger: ENTER_DIMENSION dimensionType: NETHER ``` **Dimension types:** - `NETHER` - The Nether dimension - `END` - The End dimension --- ### 🏃 7. TRAVEL_DISTANCE Trigger Track distance traveled by players with different movement modes. **Features:** - ✅ Persistent tracking across sessions - ✅ Multiple travel modes (TOTAL, WALKING, BOAT, ELYTRA) - ✅ Shows progress in action bar - ✅ Perfect for exploration challenges **Example:** ```yaml marathon_runner: title: "Marathon Runner" description: "Walk 10,000 blocks" icon: GOLDEN_BOOTS trigger: TRAVEL_DISTANCE travelMode: WALKING amount: 10000.0 ``` **Travel modes:** - `TOTAL` - Any movement (default) - `WALKING` - Walking/running only - `BOAT` - Boat or vehicle movement - `ELYTRA` - Elytra flight only **Progress tracking:** - Saved every 10 blocks traveled - Persists across server restarts - Shows live progress in action bar --- ## 🔧 Quality of Life Improvements ### Smart Features - ✅ **Smart ID Generation** - advancement IDs are now automatically based on titles (e.g., "Novice Traveler" → `novice_traveler`) - ✅ **Admin Update Notifications** - operators are now notified in chat when language files are updated on server start - ✅ **Improved Backup System** - old language/config files are automatically backed up to `backups/` folder with timestamps - ✅ **Enhanced Error Messages** - clearer feedback when advancements fail to trigger or when conditions aren't met ### User Experience - ✅ **Better Progress Feedback** - action bar shows real-time progress for all counter-based triggers - ✅ **Improved GUI Responsiveness** - faster navigation and item updates - ✅ **Clearer Trigger Types** - all triggers now show helpful descriptions in the GUI --- ## 🔧 Technical Improvements ### Performance & Stability - ✅ Improved event handling for new triggers (minimal performance impact) - ✅ Optimized distance tracking (updates every 10 blocks instead of per-tick) - ✅ Better caching system for dimension changes (prevents spam on rapid teleports) - ✅ Reduced database calls with smarter progress tracking and batching - ✅ Enhanced language file update detection system with smart merging - ✅ Better config merge logic that preserves user customizations - ✅ Improved error handling for dynamic advancement registration - ✅ Fixed memory leaks in cache cleanup methods ### Code Quality - ✅ Refactored trigger handling for better maintainability - ✅ Added comprehensive null checks for item metadata - ✅ Improved async/sync task separation for database operations - ✅ Better exception handling in advancement listeners ### GUI Updates - ✅ New configuration options for all 7 triggers - ✅ Enhanced input validation - ✅ Better error messages for invalid configurations ### Language Support - ✅ Full English translations for new triggers - ✅ Full French translations for new triggers - ✅ 50+ new translation keys ### Database - ✅ Improved progress tracking for distance-based advancements - ✅ Better async saving for travel distance - ✅ Optimized storage for cumulative tracking --- ## 🐛 Additional Bug Fixes ### Trigger-Specific Fixes - ✅ Fixed shift-click crafting not being tracked properly in CRAFT_ITEM - ✅ Fixed dimension change spam on world teleports in ENTER_DIMENSION - ✅ Fixed travel distance not persisting on server restart - ✅ Improved item detection for custom model data items (ItemsAdder/Oraxen) - ✅ Fixed SMELT_ITEM not detecting Blast Furnace and Smoker operations - ✅ Fixed ANVIL_USE triggering on empty anvil clicks - ✅ Fixed GRINDSTONE_USE not properly detecting enchantment removal - ✅ Fixed ENCHANT_ITEM not validating minimum level correctly
release

PremiumAdvancements 1.32

v1.32
31 дек. 2025 г.27Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
# 🔄 Changelog – v1.32 - Fixed Woodcutter Default Advancement. - Fixed all untranslated English texts in French - Added automatic configuration migration system, your configs now update seamlessly between versions while preserving custom changes - Fixed Create Advancement GUI not displaying all configuration options on first open
release

PremiumAdvancements 1.31

v1.31
30 дек. 2025 г.23Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
- Added Support for Formatted Chats e.g &b,&e,&c... - Fixed SLF4J Error - Manual advancement editing is now supported without GUI override
beta

PremiumAdvancements 1.3

v1.3
29 дек. 2025 г.31Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
## 🔄 Changelog – v1.3 - Fixed update checker reliability and stability - Added advancement dependencies system (`requires`) - Prevented advancements from being unlocked before required ones - Enabled full progression trees for custom advancements - Added per-world advancement conditions - Added permission-based advancement conditions - Reworked the advancements display GUI (`/padv gui`) - Advancements are now correctly listed and ordered in the GUI - Added multi-page support to the advancements GUI - Improved validation when unlocking advancements - Minor internal optimizations and cleanup
beta

PremiumAdvancements 1.2

v1.2
29 дек. 2025 г.29Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
Added Update Checker Added Multiple Language Support Added Custom model Data Advancement Icon Support
alpha

PremiumAdvancements 1.1-SNAPSHOT

v1.1
21 дек. 2025 г.32Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
The first version