
HeadBlocks
Hide heads in your world and let your players find them to earn rewards. Perfect for an Easter event.
Автор: AerWyn812,9 тыс.20обновлён 4 окт. 2026 г.
ПриключенияМеханики игрыМини-игры
Описание

Turn your world into a treasure hunt.
Hide heads, blocks, mobs or 3D models. Your players find them, earn rewards and climb the leaderboards.
Easter, Halloween, Christmas, lobby collectibles, speedruns: one plugin for every event, all year long.
100% free & open source • No premium version • 1.20 → 26.3 • Spigot / Paper / Purpur / Folia
📖 Wiki • 💬 Discord • 💻 GitHub • 🌍 Translate
⭐ Why HeadBlocks?
- Everything in game, through menus. Create a hunt, place heads, set rewards and behaviors without opening a single YAML file.
- Unlimited hunts at the same time. Each one has its own heads, progression, rewards, leaderboard and rules.
- Not only heads. Hide blocks, items, floating texts, mobs, NPCs, Nexo / ItemsAdder / Oraxen furniture or ModelEngine / BetterModel 3D models.
- Built for networks. MySQL + Redis keep player progress in sync across all your servers.
- Lightweight and maintained. 17,000+ downloads (on all platforms), rated 4.7/5, active support on Discord.

🎯 What can you build with it?
- 🐣 A seasonal event: an Easter egg hunt that opens on April 1st and closes on its own two weeks later.
- ⏱️ A speedrun: players step on a pressure plate, the timer starts, the fastest run tops the leaderboard.
- 🧭 A story trail: heads must be found in order, each one giving the next clue.
- 🏆 A live race (3.6.0): heads spawn a few at a time; the first to grab one takes it, and the first to reach the goal wins.
- 💎 Hub collectibles: hidden heads all around your lobby, with a reward every 10 found.
- 🔒 A progression path: hunts unlocked by a previous hunt, a permission, playtime, a WorldGuard region or any PlaceholderAPI value.
✨ Features
Hunts & behaviors
- Free: find the heads in any order
- Ordered: the heads must be found in a set order
- Scheduled: the hunt opens and closes on its own between two dates
- Timed: race mode started by a pressure plate, with a dedicated leaderboard
- Spawning heads (3.6.0): heads appear a few at a time, at random spots or in an area, with weighted templates, points, random rewards and traps
- Requirements: area (cuboid or WorldGuard, with optional confinement), previous hunt, permission, playtime, PlaceholderAPI comparison, combined with ALL / ANY

Rewards
- Messages, titles, broadcasts and commands for each head found
- Milestone rewards (every X heads, or on hunt completion)
- Random commands, inventory space check before giving items
Visuals & feedback
- Holograms above the heads, showing found / not found
- Particles above the heads not found yet
- Fireworks, sounds, titles and particles on click
- Spinning heads, gradient and rainbow texts
- Hints: a sound when close, a distance and an arrow in the action bar

Progression & leaderboards
- Progress per hunt and global, with customizable progress bars
- Global, per-hunt, timed and points leaderboards
- Detailed player statistics
Storage & multi-server
- SQLite: works out of the box, nothing to configure
- MySQL / MariaDB: shared database, connection pool, SSL
- Redis: real-time synchronization between servers
🔌 Integrations
- PlaceholderAPI: global and per-hunt placeholders (progress, leaderboards, timers, scores…)
- HeadDatabase / HeadDB: use any head with
hdb:<id> - WorldGuard: regions as hunt areas
- Nexo, ItemsAdder, Oraxen: custom items and furniture
- ModelEngine, BetterModel: 3D models
- Citizens, FancyNpcs, ZNPCsPlus: NPCs
- PacketEvents: per-player holograms with placeholders, found heads hidden client-side
🚀 Get started in 1 minute
- Drop the jar in
/pluginsand restart /hb hunt create easter/hb giveto get the heads- Sneak + right-click to place them
/hb optionsand the hunt menu to set rewards and behaviors
That's it, your players can start hunting. Full guide on the wiki.
📦 Compatibility
- Minecraft 1.20 → 26.3, Java 17+
- Paper / Folia / Purpur: native build on Modrinth and Hangar
- Spigot: build on SpigotMC
- Languages: English and French included, more on Crowdin (contributions welcome!)
Main commands
/hb progress//hb top: player progress and leaderboard/hb hunt create|delete|enable|disable|list: manage hunts/hb hunt select <hunt>: choose the hunt where new heads go/hb hunt schedule: set the dates of a scheduled hunt/hb spawn <hunt>(3.6.0): spawn points, heads present, reroll/hb give,/hb options,/hb reload
All commands: wiki → Commands and Permissions
Permissions
| Permission | Description | Default |
|---|---|---|
headblocks.use | Interact with heads | everyone |
headblocks.commands.progress | Own progress | everyone |
headblocks.commands.top | Leaderboard | everyone |
headblocks.commands.progress.other | Other players' progress | op |
headblocks.area.bypass | Bypass hunt area confinement | op |
headblocks.admin | All admin commands | op |
Developer API
Events: HeadClickEvent, HeadCreatedEvent, HeadDeletedEvent, HuntCreateEvent, HuntDeleteEvent, HuntStateChangeEvent (hunt events are cancellable).
Documentation: wiki → Developers
Screenshots

Галерея
Последние версии
Все версии →release
HeadBlocks 3.5.0 (Spigot)
3.5.0+spigot4 окт. 2026 г.114Minecraft: 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, spigot
Что нового
# HeadBlocks v3.5.0
## What's New
### ✨ New Features
- **Hide more than heads.** The `heads` list now accepts blocks (`block:LANTERN`), items (`item:DIAMOND:1001`), item frames (`frame:FILLED_MAP`), floating texts (`text:&6Find me!`) and mobs without AI (`mob:CAT`). Options go between brackets, e.g. `mob:ZOMBIE[head=DIAMOND_HELMET,baby=true]`. See the [documentation](https://aerwyn81.gitbook.io/headblocks/configuration-config.yml/rendering).
- **Contents of other plugins**, when installed: custom items and furniture from **Nexo**, **ItemsAdder** and **Oraxen**, mobs from **MythicMobs**, 3D models from **ModelEngine** and **BetterModel**, and NPCs from **Citizens**, **FancyNpcs** and **ZNPCsPlus**.
- **Rendering modes.** A new `rendering` section (`mode`, `scale`, `glow`) in `config.yml`, overridable per hunt: heads and blocks are placed as real blocks (`BLOCK`) or as floating, scalable display entities (`DISPLAY`) that spin smoothly.
- `/hb hunt rendering <hunt> <block|display>` converts the heads already placed in a hunt, keeping their content, position and player progress. `/hb hunt info` shows the rendering of the hunt.
- **Catalog.** `/hb give` opens a menu to take the items: filter by type, pick the hunt the items are linked to, shift + click to take a stack. `/hb give <player>` opens it for that player, and can be run from the console.
### 🚀 Improvements
- Heads rendered as entities are hidden natively for players who found them with `hideFoundHeads`: no PacketEvents needed, and no invisible collision left behind.
- Entities are never saved in the world: they are spawned when their chunk loads and respawned if something removes them, so uninstalling the plugin leaves nothing behind.
- Placed block heads are protected: they don't burn, melt, decay, pop off when their support is removed or get pulled by a sticky piston, and clicking one only claims it (a chest doesn't open, a lever doesn't toggle).
- Item frames are placed on the face you click, including floors and ceilings.
- `/hb move` also moves heads rendered as entities.
- A head moved to another hunt takes the rendering of its new hunt.
- Holograms are raised above tall contents such as mobs.
- Spin settings of a hunt are now applied to its heads.
- Faster head lookups on servers with many heads.
### ⚠️ Breaking Changes
- `/hb give <player> <number|*> [hunt]` is replaced by the catalog: the head number, `*` and hunt arguments no longer exist. Scripts or commands giving heads by number must be updated.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.5.0 (Paper/Folia)
3.5.04 окт. 2026 г.336Minecraft: 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.3folia, paper, purpur
Что нового
# HeadBlocks v3.5.0
## What's New
### ✨ New Features
- **Hide more than heads.** The `heads` list now accepts blocks (`block:LANTERN`), items (`item:DIAMOND:1001`), item frames (`frame:FILLED_MAP`), floating texts (`text:&6Find me!`) and mobs without AI (`mob:CAT`). Options go between brackets, e.g. `mob:ZOMBIE[head=DIAMOND_HELMET,baby=true]`. See the [documentation](https://aerwyn81.gitbook.io/headblocks/configuration-config.yml/rendering).
- **Contents of other plugins**, when installed: custom items and furniture from **Nexo**, **ItemsAdder** and **Oraxen**, mobs from **MythicMobs**, 3D models from **ModelEngine** and **BetterModel**, and NPCs from **Citizens**, **FancyNpcs** and **ZNPCsPlus**.
- **Rendering modes.** A new `rendering` section (`mode`, `scale`, `glow`) in `config.yml`, overridable per hunt: heads and blocks are placed as real blocks (`BLOCK`) or as floating, scalable display entities (`DISPLAY`) that spin smoothly.
- `/hb hunt rendering <hunt> <block|display>` converts the heads already placed in a hunt, keeping their content, position and player progress. `/hb hunt info` shows the rendering of the hunt.
- **Catalog.** `/hb give` opens a menu to take the items: filter by type, pick the hunt the items are linked to, shift + click to take a stack. `/hb give <player>` opens it for that player, and can be run from the console.
### 🚀 Improvements
- Heads rendered as entities are hidden natively for players who found them with `hideFoundHeads`: no PacketEvents needed, and no invisible collision left behind.
- Entities are never saved in the world: they are spawned when their chunk loads and respawned if something removes them, so uninstalling the plugin leaves nothing behind.
- Placed block heads are protected: they don't burn, melt, decay, pop off when their support is removed or get pulled by a sticky piston, and clicking one only claims it (a chest doesn't open, a lever doesn't toggle).
- Item frames are placed on the face you click, including floors and ceilings.
- `/hb move` also moves heads rendered as entities.
- A head moved to another hunt takes the rendering of its new hunt.
- Holograms are raised above tall contents such as mobs.
- Spin settings of a hunt are now applied to its heads.
- Faster head lookups on servers with many heads.
### ⚠️ Breaking Changes
- `/hb give <player> <number|*> [hunt]` is replaced by the catalog: the head number, `*` and hunt arguments no longer exist. Scripts or commands giving heads by number must be updated.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.4.0 (Spigot)
3.4.0+spigot26 сент. 2026 г.28Minecraft: 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, spigot
Что нового
# HeadBlocks v3.4.0
## What's New
### ✨ New Features
- **Hunt requirements.** A **Requirements** menu in `/hb hunt create` to stack the conditions to claim a head: area, previous hunt, permission, playtime and PlaceholderAPI, combined with `ALL` or `ANY`. See the [documentation](https://github.com/AerWyn81/HeadBlocks/blob/master/docs/configuration/hunts.md#requirements).
- `/hb give <player> <number> [hunt]` links the given head to a hunt. It is always placed in that hunt, whatever the hunt selected with `/hb hunt select`.
- `/hb hunt create` without a name creates a hunt named with the lowest free number (`1`, `2`, ...).
### 🚀 Improvements
- The bounded zone became the **area** requirement, with every option it had. Existing hunt files are migrated on load.
- The `headblocks.zone.bypass` permission is now `headblocks.area.bypass`. The old node keeps working.
- Hunt files no longer keep the keys of a behavior or a requirement that was removed.
- Player movement checks are skipped when no active hunt has an area to enforce.
### 🐛 Bug Fixes
- Fixed heads being placed in a deleted hunt when it was still selected. The selection now falls back to the default hunt.
- Fixed a possible error when refreshing HeadBlocks menus while the player had no inventory open.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.4.0 (Paper/Folia)
3.4.026 сент. 2026 г.47Minecraft: 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.2folia, paper, purpur
Что нового
# HeadBlocks v3.4.0
## What's New
### ✨ New Features
- **Hunt requirements.** A **Requirements** menu in `/hb hunt create` to stack the conditions to claim a head: area, previous hunt, permission, playtime and PlaceholderAPI, combined with `ALL` or `ANY`. See the [documentation](https://github.com/AerWyn81/HeadBlocks/blob/master/docs/configuration/hunts.md#requirements).
- `/hb give <player> <number> [hunt]` links the given head to a hunt. It is always placed in that hunt, whatever the hunt selected with `/hb hunt select`.
- `/hb hunt create` without a name creates a hunt named with the lowest free number (`1`, `2`, ...).
### 🚀 Improvements
- The bounded zone became the **area** requirement, with every option it had. Existing hunt files are migrated on load.
- The `headblocks.zone.bypass` permission is now `headblocks.area.bypass`. The old node keeps working.
- Hunt files no longer keep the keys of a behavior or a requirement that was removed.
- Player movement checks are skipped when no active hunt has an area to enforce.
### 🐛 Bug Fixes
- Fixed heads being placed in a deleted hunt when it was still selected. The selection now falls back to the default hunt.
- Fixed a possible error when refreshing HeadBlocks menus while the player had no inventory open.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.2.0 (Spigot)
3.2.0+spigot5 авг. 2026 г.76Minecraft: 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, spigot
Что нового
# HeadBlocks v3.2.0
## What's New
### ✨ New Features
- Added Folia support.
- The plugin now ships as two jars. Paper, Purpur and Folia servers use `HeadBlocks-<version>.jar`; Spigot servers use `HeadBlocks-<version>-spigot.jar` (SpigotMC).
### 🚀 Improvements
- Added support for Minecraft 26.2.
- Headblocks paper jar is now a native Paper plugin (`paper-plugin.yml`), which gives it an isolated classloader and an explicit dependency declaration. The Spigot jar is unchanged.
### 🐛 Bug Fixes
- Fixed a per-head reward loading error after `/hb reload`.
- Fixed hunt files not being rewritten when heads were removed in bulk, which made removed heads reappear after a restart. Hunt files are now written atomically.
- Fixed a head rotation task leaking on every `/hb move`, which made moved heads spin twice as fast.
- Fixed heads in an unloaded world scheduling a rotation task that errored on every tick.
- Fixed holograms failing to spawn on 1.20.5 and later, which flooded the console with
`NoSuchMethodError` once per head.
- Fixed particle names being rejected on 1.20.5 and later, where Minecraft renamed them (`REDSTONE`
became `DUST`, and so on). Both spellings are now accepted on every supported version, and an unknown name no longer spams the console.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.2.0 (Paper/Folia)
3.2.05 авг. 2026 г.197Minecraft: 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.2folia, paper, purpur
Что нового
# HeadBlocks v3.2.0
## What's New
### ✨ New Features
- Added Folia support.
- The plugin now ships as two jars. Paper, Purpur and Folia servers use `HeadBlocks-<version>.jar`; Spigot servers use `HeadBlocks-<version>-spigot.jar` (SpigotMC).
### 🚀 Improvements
- Added support for Minecraft 26.2.
- Headblocks paper jar is now a native Paper plugin (`paper-plugin.yml`), which gives it an isolated classloader and an explicit dependency declaration. The Spigot jar is unchanged.
### 🐛 Bug Fixes
- Fixed a per-head reward loading error after `/hb reload`.
- Fixed hunt files not being rewritten when heads were removed in bulk, which made removed heads reappear after a restart. Hunt files are now written atomically.
- Fixed a head rotation task leaking on every `/hb move`, which made moved heads spin twice as fast.
- Fixed heads in an unloaded world scheduling a rotation task that errored on every tick.
- Fixed holograms failing to spawn on 1.20.5 and later, which flooded the console with
`NoSuchMethodError` once per head.
- Fixed particle names being rejected on 1.20.5 and later, where Minecraft renamed them (`REDSTONE`
became `DUST`, and so on). Both spellings are now accepted on every supported version, and an unknown name no longer spams the console.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.1.0
3.1.025 июн. 2026 г.171Minecraft: 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.11paper, purpur, spigot
Что нового
# HeadBlocks v3.1.0
## What's New
### ✨ New Features
- **Zone behavior**: confine players to a cuboid or WorldGuard region while playing a hunt. New `headblocks.zone.bypass` permission and GUI config.
- **Timed time limit**: countdown to finish a timed run, teleport back to start on timeout, with optional progress reset.
- **Apply rewards to whole hunt**: copy a head's rewards to every head of the hunt.
- **Hidden leaderboard players**: exclude specific players from `/hb top`.
- New placeholder `%headblocks_hunt_<huntId>_finishers%` to display the number of players who completed a hunt.
### 🚀 Improvements
- Timed start plates are protected from breaking and removed when the hunt is deleted.
- Head placement/assignment refuses or skips heads outside a hunt's zone.
- `/hb reset` and `/hb resetAll` can now be run from the console (only `--head` with no value still requires a player, since it targets the looked-at block).
### 🐛 Bug Fixes
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 3.0.1
3.0.124 мая 2026 г.171Minecraft: 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.2paper, purpur, spigot
Что нового
# HeadBlocks v3.0.1
## What's New
> **Headline:** HeadBlocks now ships a complete **multi-hunt system**. A server is no longer limited to a single global head collection — you can create, configure and run as many independent hunts as you want, each with its own heads, behavior, rewards and progression. Most of the features below build directly on top of this new foundation.
### ✨ New Features
- **Multi-hunt system**: create, rename, delete, list and switch between multiple hunts. Each hunt owns its own heads, rewards, holograms, hints, order configuration and player progression.
- **Hunt behaviors** (cumulative — a hunt can combine several, e.g. `Ordered` + `Timed`):
- `Free` — classic, head-by-head exploration
- `Ordered` — heads must be found in a specific sequence
- `Timed` — time-limited challenge with countdown, leaderboard, and an optional repeatable mode (new `/hb leave` command to abandon a running run)
- `Scheduled` — hunt opens/closes automatically with three sub-modes:
- `Range` — open between two dates (`MM/dd/yyyy HH:mm`)
- `Recurring` — periodic recurrence with a configurable unit (day/week/month/year)
- `Slots` — one or several recurring time-of-day windows
- **`/hb hunt schedule` command**: full CLI to configure scheduled mode, dates, recurrences and slots.
- **Hunt sub-menu in `/hb options`**: opening Hints / Order / Rewards now first prompts for the target hunt.
- **Multi-hunt Redis sync**: hunt creation, state and configuration are now propagated across servers in addition to player progression — full multi-server multi-hunt support.
- **HeadDB support**: [HeadDB](https://www.spigotmc.org/resources/headdb.114941/) joins HeadDatabase as a supported head provider, configurable in `config.yml`.
- **Minecraft 1.21.11 / 26.1 support**: tested and added to the supported platform versions.
- **Colored console output**: log messages now use ANSI color codes for better readability.
### 🚀 Improvements
- **`/hb stats` and `/hb list`** revamped to surface per-hunt breakdowns and clearer information.
- **Per-hunt storage of head locations**: heads are now persisted directly inside `hunts/<id>.yml` instead of the global `locations.yml`. Legacy data is automatically migrated on startup.
- **Performance with large head counts**: hologram handling and head lookups have been significantly optimized for servers with many heads.
- **No more hard dependency on XSeries**: only the modules actually used (`XSound`) are shaded, slashing the bundled code size by ~3 500 lines.
- **Improved GUI flow** for selecting a hunt when configuring Timed / Scheduled behavior.
- **New & updated placeholders** for Timed and Scheduled hunts (state, remaining time, next opening, repeatability, etc.).
- **Documentation moved to GitBook** with a full v3.0 multi-hunt section.
- **Dependencies** updated (Jedis, Gradle wrapper, …).
### 🧱 Stabilization & Code Quality
A large part of this release was spent making the new multi-hunt foundation solid:
- **Massive test coverage**: thousands of new unit and integration tests across commands, services, storages, behaviors, hooks and events.
- **Refactor from static singletons to dependency injection**: a new `ServiceRegistry` wires services explicitly, making the codebase testable and removing hidden coupling.
- **Reliability fixes**: try-with-resources on streams, `ThreadLocalRandom` instead of shared `Random`, deduplicated event/database code, safer SQLite/MySQL handling.
- **Static analysis**: Qodana and SonarQube/SonarCloud integration with a long list of resolved findings.
- **Removed click-counter feature** and its leftover GUI/DB columns (was unused and a source of bugs).
### 🐛 Bug Fixes
- Fixed `/hb removeall` leaving stale references in hunts.
- Fixed `/hb reset` and `/hb resetall` on ordered/timed hunts.
- Fixed head moves not being persisted correctly.
- Fixed Redis hunt transfer issue across servers.
- Fixed heads being loaded twice on startup.
- Fixed several edge cases in ordered hunt progression.
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 2.8.6
2.8.625 февр. 2026 г.182Minecraft: 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.10spigot
Что нового
# HeadBlocks v2.8.6
## What's New
### ✨ New Features
- Added `/hb debug resync` commands for database/locations synchronization
- `resync database`: removes heads from database not present in locations.yml
- `resync locations`: restores head blocks in the world from locations.yml
- Supports `--force` flag to override safety checks
- Multi-server detection with safety warnings
- Replaced default database connection handler by HikariCP connection pooling for MySQL and SQLite
- Added configurable pool settings (`maxConnections`, `minIdleConnections`, `connectionTimeout`, `idleTimeout`, `maxLifetime`)
### 🚀 Improvements
- The `/hb removeall` command now runs asynchronously to avoid server freezes on large head counts
- Enhanced head visibility handling logic and optimized caching by introducing chunk-based tracking
- Updated to Minecraft 1.21.11
### 🐛 Bug Fixes
- Fixed command parsing in RewardService to skip blank commands and added safety checks for empty command lists
- Fixed deprecated Particle enum usage for 1.21+ compatibility
---
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**Spigot discussion
**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
release
HeadBlocks 2.8.2
2.8.213 нояб. 2025 г.216Minecraft: 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.10spigot
Что нового
# HeadBlocks v2.8.2
Thank you for using HeadBlocks ❤️
If you find a bug or have a question, don't hesitate to :
- open an issue in [**Github**](https://github.com/AerWyn81/HeadBlocks/issues)
- or in the [**Discord**](https://discord.gg/f3d848XsQt)
- or in the [**discussion**](https://www.spigotmc.org/threads/headblocks-christmas-event-1-20-easter-eggs-multi-server-support-fully-translatable-free.533826/)
## What's New
### ✨ New Features
- **Hide Found Heads**: Added an option to visually hide heads already discovered by players (requires PacketEvents)
- **Rewards Interface**: New GUI to manage and view configured rewards for each head
- **Per-Head Reset**: Ability to reset a player's progress for a specific head via `/reset` and `/resetall` commands
### 🚀 Improvements
- **Cache Optimization**: Complete overhaul of the caching system for Redis and Memory, including player, leaderboard,
and
heads caches
- **Redis Performance**: Replaced lists with sets for storing player heads, simplifying operations and improving
performance
- **Hologram Management**: Overhauled hologram system with placeholder support. Removed support for
CMI/FancyHolograms & DecentHolograms, replaced by "Advanced hologram" type
- **Asynchronous Particles**: Optimized particle spawning using Bukkit scheduler to reduce server load
### 🐛 Bug Fixes
- **Error Handling**: Fixed error spam on startup when there's an issue loading the database.
### 🔧 Technical
- **Dependency Removal**: Removed unnecessary dependencies to simplify plugin compilation.
- **Dependency Management**: Centralized dependency versions using Gradle catalog (`libs.versions.toml`)
- **Project Structure**: Simplified Gradle structure by removing unnecessary `core` module
- **Console logging**: Improved logging in console using native server logger.



