▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/BlockProt Reloaded
BlockProt Reloaded

BlockProt Reloaded

An advanced Bukkit protection plugin for chests, furnaces, and more, built with a modern GUI and packed with powerful features and extended functionality.

Оцените первым
589
3
Все версииBlockProt Reloaded 1.3.4-hotfix

BlockProt Reloaded 1.3.4-hotfix

Release08.08.2026

Список изменений

!1.3.4

Summary

1.3.4-hotfix.1 is a hotfix on top of the 1.3.4 release. It fixes the critical startup crash on Spigot 26.2 (NoClassDefFoundError: net/kyori/adventure/text/Component) that prevented the plugin from enabling, the second wave of Paper-only runtime crashes that appeared once the plugin could enable, two NoSuchMethodError crashes when opening the block info panel and the sign prompt, menu buttons that printed usage: /bp <user/admin> instead of doing anything, and back buttons that closed the whole menu instead of returning to the previous window.

The hotfix also improves friend search across blocks, pets, and dialogs, and removes the anvil GUI in favor of chat input everywhere.

Note: This hotfix does not claim to make every feature work correctly on Spigot or any other non-Paper software. It fixes what was detected during a test run on the software this server environment targets (Paper), plus the Spigot failures that same test surfaced. That test was a one-time, spontaneous check; I normally only test on Paper, the main target. Spigot 26.2 was the only software that errored, and lower versions (26.2 down to 1.21.1) were not tested, so errors there are possible. I always recommend the latest, most up-to-date version. If you run into an error, please open a GitHub issue so I can resolve it.

Spigot Startup Crash

On Spigot 26.2 the plugin could not enable: it threw NoClassDefFoundError: net/kyori/adventure/text/Component with a ClassNotFoundException for the same class, because Spigot and vanilla CraftBukkit do not ship Kyori Adventure and do not expose Adventure-based sendMessage, sendActionBar, or ItemMeta#displayName methods.

Fixed with a ComponentMessages runtime wrapper that checks via reflection whether the server exposes the Adventure methods. On Paper, Folia, and Purpur it calls the native APIs; on Spigot and CraftBukkit it serializes to legacy colour-coded strings and calls the plain-string equivalents. The build also shades the required Kyori Adventure transitive dependencies so those environments can resolve the classes at runtime.

Runtime Crashes Found After the Startup Fix

With the startup crash fixed, a second wave of Paper-only API calls crashed on Spigot as they were used. All of the following are now guarded with a Spigot-compatible fallback:

  • Block events (place, break, burn, redstone) broke because a Paper-only NamespacedKey accessor was unguarded.
  • Player join broke because a Paper-only profile-creation overload was unguarded.
  • Every inventory GUI broke because a Paper-only inventory-creation overload was unguarded.
  • Block locking, friend management, and renaming (chests, doors, beds, other tile-entity blocks) broke because Paper-only block-state accessors were unguarded.
  • Skull rendering in friends lists, block/entity info, and the audit log used a Paper-only profile type; these now use the standard Bukkit profile API.
  • Direct action-bar calls across dialogs, inventories, listeners, and commands crashed on Spigot; they now all go through ComponentMessages.

Inventory Menus & Navigation

  • Menu buttons now run their actions. Buttons that previously executed /blockprot subcommands through performCommand (which prints usage: /bp <user/admin> and does nothing in menu mode) now execute their action directly: transfer (/bp transferall), About, Config, Auto Drop, and Debug.
  • Back buttons restore the exact window you came from. The menu system now keeps an origin stack instead of a single overwritten origin: every menu pushes its own origin before opening a child menu, and goBack pops it, so the admin menu -> lockables -> auto drop/worlds chain, the stats/info lists, settings -> friends, and the block lock submenus all walk back level by level.

Update Notifications & Version Channels

  • Version ranking now distinguishes three tiers: experimental pre-releases (BEDev/snapshot), clean releases, and post-release corrections (hotfix/patch/fix). The old alpha/beta/rc/dev special-casing is gone.
  • Channel-aware update messages. Stable servers only see stable updates; hotfix messages name the release they fix; BEDev messages state that the build is experimental and not a stable version.
  • Boot banner announces which channel the server runs, and experimental builds create a safety backup on startup when backups are enabled.

Server Software Detection

  • On startup the plugin detects the real server software and warns when it is not Paper or a Paper fork (Spigot, CraftBukkit, hybrids, unknown). The warning is non-fatal; the plugin still loads with its fallbacks. Pure CraftBukkit remains hard-blocked.
  • Support for Spigot and Bukkit is planned to end with 1.3.6, when a separate BlockProt Reloaded Legacy project begins.

Friend Search, Chat Input and the Discord Case

  • Case-insensitive search. The fuzzy name comparison lowercases both strings, so a correctly-typed but differently-cased name is found.
  • Shared player pool (PlayerLookup). Merges every online player with the offline cache, so an online player is always found and a known offline player still is. All friend-add entry points (block search, pet/entity search, both dialog equivalents) and the transfer-target search use this same pool.
  • Pets/entities now get search results. They open the same search-results screen as block friends instead of silently auto-adding the best match, and search failures report a real error message instead of a misleading "player not found".
  • Chat input everywhere, no more anvil GUI. Every free-text prompt (friend search, transfer search, block/entity naming, admin config values, world-expiry duration) now uses chat input on Paper and Spigot alike. Block/entity renaming uses its own label (e.g. "Set block name") instead of the generic player-search wording, and the prompt no longer tells players to press Tab.
  • The Discord case. A case about friend search not finding anyone was reported via Discord; the issue was that user's other plugins, not this one. Improvements were applied anyway.

Raid Detection Off by Default

raid_detection.enabled now defaults to false, matching entity_protection.enabled. Both features remain fully working; administrators opt in explicitly in config.yml.

Visible Download Link in Update Notifications

The update notification shown to operators now also prints the download link as visible text in chat, not only as a clickable component: the message ends with a | Download: prefix and the release URL itself, underlined in white and still clickable (hover tooltip: "Click to visit the GitHub Releases page"). This guarantees the notification always satisfies the standing requirement: it states that a new version is available, names which version, and gives the download link, no matter where the player clicks.

Boot Banner Update Status

The startup checklist now ends with an Update Check line that shows the real check result instead of a separate console warning: green (● Up to date (1.3.4)) when the installed version is the latest release, red/coral (● New version available: 1.3.5) with the download URL indented below when a newer version exists, and gold when the installed version is ahead of the latest public release. The line waits up to 3 seconds for the asynchronous check and, if it is still in flight, falls back to a synchronous request (with its own timeouts) so a slow GitHub API still yields a real result; Not checked only appears when the API is genuinely unreachable. The in-game update dialog now shows the release URL as visible text next to the underlined version (Download: v1.3.5 | https://github.com/...), still clickable. All new strings are translatable (EN/ES).

Hotfix-ahead update message

  • Running a hotfix ahead of the latest published release now shows a dedicated message. Previously, when UpdateChecker found the running version ranked above the latest GitHub release (latestVersion.compareTo(currentVersion) < 0), it always reported the latest published version with the generic messages.update.ahead key, which read "BlockProt version is ahead of release (X)" and named the older public tag instead of the hotfix the server is actually running. When the running version is a hotfix (SemanticVersion.isHotfix()), the in-game chat, the console log, and the boot banner now use the new messages.update.ahead_hotfix translation key, which prints the running hotfix version ({version} = currentVersion) and the release it corrects ({base_version} = currentVersion.baseVersion()), instead of the older public tag. Non-hotfix ahead builds keep the existing messages.update.ahead key with {version} from latestVersion. Both the in-game UpdateChecker path and the console/logger path use the same two-branch selection.
  • The ahead translation was reworded to name "BlockProt Reloaded" and say "ahead of the published release" (EN: BlockProt Reloaded is ahead of the published release ({version}), ES: BlockProt Reloaded está por delante del lanzamiento publicado ({version})). The new ahead_hotfix key reads BlockProt Reloaded is running hotfix {version}, ahead of the published release ({base_version}) (ES: BlockProt Reloaded está ejecutando el hotfix {version}, por delante del lanzamiento publicado ({base_version})). A new MESSAGES__UPDATE__AHEAD_HOTFIX entry was added to TranslationKey.java; EN and ES were updated together.

Commits

  • 65fa6e3: Update UpdateChecker.java (visible download link in update notifications).
  • 2dc438f: Update build.gradle.kts.
  • d09e08e: Update BlockProtConsole.java.
  • 087b4b0: Add ComponentMessages utility for cross-platform compatibility.
  • 85c584d: Fix Spigot startup & menu/navigation issues.
  • f7e16cb: Improve update notifications for hotfixes and dev builds.
  • 975a722: Add BEDev/hotfix channels & Spigot fixes.
  • 0822163: Create 1.3.4 HOTFIX.png.
  • defbda5: Hotfix: friend search, chat input, raid toggle & more.
  • 59af0a0: Remove unnecessary text (#_<-).
  • 2e346e2: Handle hotfix-ahead updates and refresh translations (new ahead_hotfix key rewords the ahead-of-release message to name the running hotfix and its base, and rewords the existing ahead key).

Файлы

BlockProtReloaded-1.3.4-hotfix.jar(5.62 MiB)
Основной
Скачать

Метаданные

Канал релиза

Release

Номер версии

1.3.4-hotfix

Загрузчики

Bukkit
Folia
Paper
Purpur
Spigot

Версии игры

1.21.1–26.2

Загрузок

41

Дата публикации

08.08.2026

Загрузил

ID версии

Главная