COWMODSКаталог модов
AllItemsMini – Mini All Items Challenge

ВЕРСИИ (8)

release

AllItemsMini – Mini All Items Challenge 2.4.0

2.4.0
8 окт. 2026 г.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.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3folia, paper, purpur, spigot
Скачать
Что нового
## [2.4.0] - 2026-10-08 ### 🎉 New Features - **Added:** Solo challenges - `/aic solo` starts an own run (own order, timer, boss bar) in parallel to the shared one; `/aic leave` / `/aic join` opt out of / back into the shared challenge. Permission `allitems.solo` (default: everyone), config section `solo`. ### 🐛 Fixes - **Fixed:** Hand-ins while looking into the air never worked - `ignoreCancelled` dropped every `RIGHT_CLICK_AIR`, which Bukkit always reports as cancelled. - **Fixed:** An unreadable `progress.yml` was overwritten with an empty state on the next shutdown; it is now moved aside as `progress.yml.broken-<timestamp>`. - **Fixed:** `/aic reload` re-read the progress from disk and could undo a hand-in made at the same time on Folia; it now keeps the state in memory. - **Fixed:** Two hand-ins within one lagging tick could lose the first item in its restore window. - **Fixed:** Items behind a disabled feature flag (experimental content) are no longer challenge targets. - **Fixed:** `/aic start` on a running or completed challenge no longer re-broadcasts the start. - **Fixed:** After `/aic reset` the timer on/off setting survives a restart. ### 🔧 Changes - **Changed:** Autosave every 5 minutes while a timer runs; a crash no longer loses all time since the last hand-in. - **Changed:** Timers use a monotonic clock - system clock jumps no longer change challenge time. - **Changed:** Update checker ignores beta/alpha uploads and versions without this server's loader. - **Changed:** Package renamed to `de.boondocksulfur.allitems`; existing data files stay compatible.
release

AllItemsMini – Mini All Items Challenge 2.3.1

2.3.1
31 июл. 2026 г.58Minecraft: 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.3folia, paper, purpur, spigot
Скачать
Что нового
## [2.3.1] - 2026-07-31 ### 🐛 Fixes - **Fixed:** Items that Mojang adds after a challenge has started are now picked up on server start. `applyBlacklistAndRulesToOrder()` could only ever *remove* entries, and `loadState()` only discards materials that became invalid — so a saved `order` stayed frozen at the item set the server had at `/aic start`. On a long-running challenge this silently omitted every item from later Minecraft updates. - Measured on a live 26.1.2 server: **114 survival-obtainable items missing**, among them the complete copper family (tools, armour, chains, bars, chests, lanterns, statues incl. all oxidation stages and waxed variants), all 16 harnesses, all 12 shelves, the spears, the nautilus armour, `DRIED_GHAST` and `IRON_CHAIN`. The stored order matched the item set of Minecraft ~1.21.4. - New method `addNewlyAvailableItems()` appends anything missing to the *pending* part of the order. Positions `0..index` — the finished items **and** the current target — are left untouched, so neither the counter jumps nor the running item timer resets. If the challenge was already complete, the new items extend it. - Verified against the official registry: item list generated with the vanilla data generator from `mojang_26.1.2.jar`, obtainability cross-checked against all 1515 recipes and 1326 loot tables. ### 🔧 Changes - **Added:** Config option `auto-add-new-items` (default `true`). Set it to `false` to keep a running challenge at its original scope. - **Changed:** Build pinned back to `maven.compiler.release` 21 against the Paper **1.21.10** API. Bytecode is forward-compatible, so one JAR runs on Java 21 (1.21.x) *and* Java 25 (26.x). Building against the 26.1.x artifact is not an option here: it ships as class file version 69 and cannot be read with release 21 — that path would produce a Java-25-only JAR and lock out every 1.21.x server. The plugin uses stable Bukkit API only, and `Material.values()` is resolved at runtime, so a 26.x server still exposes its own items. - **Changed:** `maven-shade-plugin` 3.6.0 → 3.6.2.
release

AllItemsMini – Mini All Items Challenge 2.3.0

2.3.0
3 июл. 2026 г.30Minecraft: 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.2folia, paper, purpur, spigot
Скачать
Что нового
## [2.3.0] - 2026-07-03 ### 🎉 New Features - **Added:** Support for the year-based Minecraft 26.x line (26.1 "Tiny Takeover", 26.2). One JAR covers both version lines — `api-version` stays `"1.21"` as the minimum. ### 🔧 Changes - **Changed:** Now compiled against the Paper 26.1.2 API (new artifact scheme `26.1.2.build.N-stable`; Paper dropped `-R0.1-SNAPSHOT` with the year-based Minecraft versioning). No code changes were required — zero compile errors and zero deprecation warnings. - **Verified:** Boot-tested on Paper **26.1.2** (challenge starts, 1383 items, `GOLDEN_DANDELION` included, spawn eggs/`TRIAL_SPAWNER`/`VAULT` filtered) and on Paper **1.21.10** (loads via plugin remapper, challenge starts, update check OK). - **Note:** 26.x content needs no filter updates — 26.1's golden dandelion is survival-obtainable, 26.2's cinnabar/sulfur families are survival-obtainable, and the `SULFUR_CUBE_SPAWN_EGG` is already caught by the `_SPAWN_EGG` suffix rule.
release

AllItemsMini – Mini All Items Challenge 2.2.1

2.2.1
2 июл. 2026 г.24Minecraft: 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.11folia, paper, purpur, spigot
Скачать
Что нового
## [2.2.1] - 2026-07-02 ### 🎉 New Features - **Added:** Language files are now exported to `plugins/AllItemsMini/lang/` on startup and can be edited there; `/aic reload` picks up changes live. Edited files are layered over the bundled translations, so missing/new keys fall back to the JAR version. This makes the long-documented "live-reloadable translations" feature actually work — previously translations were only ever read from inside the JAR. ### 🐛 Bug Fixes - **Fixed:** Timers now continue automatically after `/aic stop` → `/aic start` and across server restarts. `stopGame()`, `resetGame()` and `onDisable()` previously called `ChallengeTimer.pause()`, which set the *user-facing* pause flag — after resuming the challenge (or rebooting), the timer silently stayed paused until a manual `/aic timer start`. They now use the new `suspend()`, which folds elapsed time without touching the pause flag. *Note when upgrading from ≤ 2.2.0: the old save may carry `paused: true` once — a single `/aic timer start` clears it.* - **Fixed:** `/aic reload` no longer discards timer time accrued since the last save. `performReload()` persisted *after* restoring from `progress.yml`, so any running time since the last event (start, hand-in, timer command) was lost; it now saves the live state first. - **Fixed:** Nine additional survival-unobtainable items are excluded from the challenge so it can actually be completed on 1.21.x: `TRIAL_SPAWNER`, `VAULT`, `TEST_BLOCK`, `TEST_INSTANCE_BLOCK` (1.21.5+), `FARMLAND`, `DIRT_PATH`, `SUSPICIOUS_SAND`, `SUSPICIOUS_GRAVEL`, `CHORUS_PLANT`. - **Fixed:** The hand-in double-submission guard no longer uses `Bukkit.getCurrentTick()`, which is not reliable on Folia's region threads — replaced with a 50 ms per-player time-based debounce. - **Fixed:** `onDisable()` now restores items still in the 1-tick offhand-restore window, closing a narrow item-loss path when the server shuts down in the same tick as a submission. - **Fixed:** `buildNewOrder()` resets `index` before filtering (defensive — a stale index could otherwise mark random items as already done).
release

AllItemsMini – Mini All Items Challenge 2.2.0

2.2.0
26 мая 2026 г.46Minecraft: 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.11folia, paper, purpur, spigot
Скачать
Что нового
## [2.2.0] - 2026-05-26 ### 🎉 New Features - **Added:** Update checker now filters by the running Minecraft version. Modrinth versions whose `game_versions` array does not include the server's exact or `major.minor` line are skipped, so a 1.22 release is never advertised to a 1.21 server. ### 🐛 Bug Fixes - **Fixed:** `/aic reload` after a blacklist change no longer inflates or deflates the submitted-count. Already-handed-in items that survive the new filter remain "done"; the order is repartitioned (done first, pending after) and `index` is recomputed accordingly. - **Fixed:** `pendingOffhand` and the new tick-dedup map are now `ConcurrentHashMap` — on Folia, events for different players fire on different region threads, and the previous `HashMap` could corrupt under concurrent put/remove. - **Fixed:** Explicit guard against double submission when both `HAND` and `OFF_HAND` events fire in the same physical right-click. Previously this was implicitly prevented by nulling the offhand mid-handler — fragile if the API ever changes. - **Fixed:** `mergeDefaults()` now explicitly loads the packaged `config.yml` and calls `setDefaults()` before `copyDefaults(true)`, so new config keys are actually written on update (the old call had no defaults set on second start and silently no-op'd). - **Fixed:** `Msg.getKey()` now uses `Locale.ROOT` for lowercasing, avoiding the Turkish-locale `I → ı` bug that would break every translation lookup on `tr_TR` servers. - **Fixed:** `PlayerQuitEvent` offhand-restore now falls back to `Inventory.addItem()` / drop if the offhand was somehow refilled between submission and quit — no item loss. - **Fixed:** Eliminated the double `saveState()` call at challenge completion (`stopGame()` already persists). - **Fixed:** `UpdateChecker.isNewer()` now considers a remote release newer than a local pre-release with the same numeric components (e.g. `2.1.0` > `2.1.0-rc.1`). - **Fixed:** `/aic` usage in `plugin.yml` now lists the `timer` subcommand. - **Fixed:** Offhand-restore lambda no longer silently drops a submitted item if the offhand slot was refilled by another plugin / auto-pickup between submission and the next tick — falls back to `Inventory.addItem()` and drops any overflow at the player's feet, mirroring the `PlayerQuitEvent` handler. ### 🔧 Changes - **Changed:** Replaced deprecated `Bukkit.broadcastMessage(String)` with an Adventure `Component`-based `broadcast()` helper using `LegacyComponentSerializer.legacySection()`. - **Changed:** Replaced deprecated `Player.sendActionBar(String)` with the `Component` overload. - **Changed:** Replaced deprecated `JavaPlugin.getDescription().getVersion()` with `getPluginMeta().getVersion()` (Paper 1.20.6+ migration). - **Changed:** `loadBlacklistFromConfig()` no longer also loads the language — split into `loadBlacklistFromConfig()` and `loadLanguageFromConfig()`. Method names now match what they do. - **Changed:** Broadcast of `BROADCAST_START` moved from `CommandHandler` into `AllItemsMini.startGame()` so the `safe()` wrapper covers the full effect of the `/aic start` command (no more "Error" message after a successful start if broadcast throws). - **Changed:** Logger messages unified to English throughout (`AllItemsMini`, `UpdateChecker`) — previously a mix of German and English. - **Changed:** Gson now declared explicitly as a `provided` dependency in `pom.xml` (was relied on transitively from Paper). - **Changed:** `/aic timer` tab-completion now also suggests the German aliases `an`/`aus`/`pause`/`resume` that the command already accepted. ### 🗑️ Removed - **Removed:** Unused `Lang.fromSystemLocale()` method.
release

AllItemsMini – Mini All Items Challenge 2.1.0

2.1.0
24 апр. 2026 г.30Minecraft: 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.11folia, paper, purpur, spigot
Скачать
Что нового
## [2.1.0] - 2026-04-24 ### 🎉 New Features #### Folia Support - **Added:** Full Folia compatibility via runtime detection - the plugin now works on both Paper and Folia servers - **Added:** `SchedulerUtil` utility class that automatically selects the correct scheduler API (BukkitScheduler on Paper, regionized schedulers on Folia) #### Modrinth Update Checker - **Added:** Automatic update check against the Modrinth API on server startup - **Added:** Semantic version comparison (SemVer) - correctly determines if a remote version is newer - **Added:** In-game update notification for admins (players with `allitems.admin`) on join - **Added:** Configurable via `update-check: true/false` in `config.yml` - **Added:** Update messages in all 4 languages (DE, EN, FR, ES) #### Tab-Complete - **Added:** Tab-completion for `/aic` subcommands (`start`, `stop`, `reset`, `show`, `skip`, `timer`, `reload`) - **Added:** Tab-completion for `/aic timer` options (`on`, `off`, `start`, `stop`, `reset`) #### bStats Metrics - **Added:** bStats integration for anonymous usage statistics ### 🐛 Bug Fixes - **Fixed:** Race condition in offhand item submission - items are now tracked in a pending map and restored via `PlayerQuitEvent` if the player disconnects during the 1-tick restoration window - **Fixed:** Invalid materials in `progress.yml` (e.g., after a Minecraft version update) are now counted and logged with a summary warning instead of being silently dropped - **Fixed:** BossBar is now explicitly removed via `Bukkit.removeBossBar()` on plugin disable instead of just clearing players ### 🔧 Changes - **Changed:** Plugin now officially supports all 1.21.x versions (1.21, 1.21.1, ... 1.21.11+) via `api-version: "1.21"` and `folia-supported: true` - **Changed:** Unobtainable item filter is now string-based instead of hardcoded enum references - automatically adapts to the running server version - **Changed:** Config automatically merges missing keys on startup via `copyDefaults` - new config options are added without overwriting existing values ### 🗑️ Removed - **Removed:** Unused `exportDefaultLanguageFiles()` method from `MessageProvider` ### 📁 New Files - `src/main/java/org/example/allitems/SchedulerUtil.java` - Platform-agnostic scheduler wrapper - `src/main/java/org/example/allitems/UpdateChecker.java` - Async Modrinth update checker --- ## [2.0.0] - 2026-01-11 ### 🎉 Major Features #### YAML-Based Multi-Language System - **Added:** Complete YAML-based translation system replacing hardcoded messages - **Added:** French (fr_FR) language support - **Added:** Spanish (es_ES) language support - **Added:** Live-reloadable translations via `/aic reload` without server restart - **Added:** Automatic fallback to English for missing translation keys - **Added:** Lazy loading and in-memory caching for optimal performance - **Added:** Thread-safe language file operations using ConcurrentHashMap #### Developer Documentation - **Added:** Comprehensive Javadoc (in English) for all classes and methods - **Added:** Class-level documentation for AllItemsMini with features overview - **Added:** Detailed method documentation for MessageProvider (237 lines) - **Added:** Complete documentation for ChallengeTimer state management - **Added:** Full Javadoc for CommandHandler routing logic - **Added:** Enhanced documentation for Lang enum with locale detection - **Added:** Documented Msg enum with YAML key conversion #### Code Modernization - **Improved:** MessageProvider now uses modern Java 21 features - **Improved:** Added @NotNull and @Nullable annotations throughout codebase - **Improved:** Enhanced null-safety with explicit checks and fallbacks - **Improved:** Modernized stream operations and lambda expressions - **Improved:** Better error handling with proper exception logging - **Improved:** Improved code organization and separation of concerns ### 🔧 Changes - **Changed:** Default language is now English (was German) - **BREAKING CHANGE** - **Changed:** Msg enum simplified to pure key enum (removed hardcoded translations) - **Changed:** Lang enum expanded with fileName field for YAML file mapping - **Changed:** MessageProvider constructor now requires JavaPlugin instance - **Changed:** Language loading moved to runtime instead of compile-time ### 📁 New Files - `src/main/resources/lang/de_DE.yml` - German translations (47 keys) - `src/main/resources/lang/en_US.yml` - English translations (47 keys) - `src/main/resources/lang/fr_FR.yml` - French translations (47 keys) - `src/main/resources/lang/es_ES.yml` - Spanish translations (47 keys) ### 🐛 Bug Fixes - **Fixed:** Language reload now properly clears cache and reloads all files - **Fixed:** Invalid format strings now log warnings instead of crashing - **Fixed:** Missing translation keys now show placeholder instead of null ### 📚 Documentation - **Updated:** README.md with comprehensive language system documentation - **Updated:** README.md with developer documentation section - **Updated:** README.md with language customization instructions - **Added:** Reference to CHANGELOG.md in README ### ⚠️ Breaking Changes - **Default language changed from German to English** _Migration:_ Add `language: de` to your `config.yml` to restore German
release

AllItemsMini – Mini All Items Challenge 1.3.1

1.3.1
19 дек. 2025 г.124Minecraft: 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.10paper, purpur, spigot
Скачать
Что нового
## [1.3.1] - 2025-12-18 ### Fixed - **CRITICAL:** Fixed item duplication bug where items were duplicated upon submission due to the offhand item not being removed before restoration in the next tick. - **CRITICAL:** Fixed armor piece swap bug where armor pieces would swap with equipped armor and disappear instead of being properly submitted. Items are now immediately removed from the offhand before restoration to prevent Minecraft's auto-equip behavior. - Fixed race condition where players disconnecting or changing their offhand between submission and restoration could cause issues. Added online check and offhand state validation before restoration. - Removed redundant null checks for ItemStack instances (modern Bukkit never returns null, only AIR). - Fixed encoding issue in code comment.
release

AllItemsMini – Mini All Items Challenge 1.3.0

1.3.0
25 нояб. 2025 г.48Minecraft: 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.10paper
Скачать
Что нового
```markdown - Initial public release on Modrinth - Built against Paper 1.21.10 / Java 21 - Bossbar-based all-items challenge - Basic English/German language support - Configurable blacklist for items - Optional global timer with `/aic timer <on|off|start|stop|reset>` - Progress persisted in `progress.yml`