
NeoTab
NeoTab – Modern Tablist, Scoreboard and ActionBar Customization NeoTab is a modern and highly customizable Minecraft plugin for Paper, Spigot and CraftBukkit servers. It combines animated tab headers and footers, configurable scoreboards, ActionBar mod
Список изменений
NeoTab 1.3.3 — Stability, Performance & Scoreboard Compatibility Update
NeoTab 1.3.3 is a major stability, performance, and interoperability update for the 1.3.x release line.
This release includes all improvements introduced with 1.3.2 and adds an important fix for servers where other plugins temporarily take control of a player’s scoreboard.
The update makes NeoTab more reliable on active servers, improves compatibility with scoreboard and sidebar plugins, modernizes its Paper integrations, and reduces unnecessary background work.
🛡️ Improved Scoreboard Compatibility
NeoTab now handles temporary scoreboard takeovers more reliably.
When another plugin displays a temporary sidebar, minigame scoreboard, lobby board, or similar interface, NeoTab will yield without permanently disabling its own scoreboard for that player.
- Temporary scoreboard takeovers are no longer treated as permanent player opt-outs.
- NeoTab continues checking the configured scoreboard state during regular update ticks.
- NeoTab does not fight another plugin while that plugin actively owns the scoreboard.
- Existing NeoTab sessions are reused when another plugin restores NeoTab’s previously known scoreboard.
- A fresh NeoTab session is created when the external plugin restores an empty and available scoreboard.
- Temporary ownership information is cleared when a player explicitly disables the NeoTab scoreboard.
This allows temporary sidebar plugins to take control when needed while ensuring that NeoTab can safely return afterward.
🔌 General Plugin Interoperability
NeoTab now behaves more carefully when other plugins manage the tablist or scoreboard.
- Tablist data is only restored while NeoTab still owns the affected state.
- NeoTab yields when another plugin takes control of the tablist.
- Existing scoreboards containing objectives or teams are no longer unnecessarily replaced.
- NeoTab detects when another plugin assigns a scoreboard later and releases ownership correctly.
- Delayed join operations can no longer recreate region or scoreboard data after a player has already disconnected.
These changes make NeoTab safer to use alongside scoreboard, tablist, minigame, lobby, permissions, and server-management plugins.
⚡ Performance Improvements
Several frequently used systems have been optimized:
- Region Profiles now use chunk-based lookup instead of checking every region individually.
- Extremely large regions automatically use a safe fallback system.
- Nearest-player detection now uses a spatial grid instead of comparing every player against every other player.
- Advancement data and player completion counts are cached.
- Player-independent footer components are shared between players.
- Unchanged tablist packets are skipped instead of being sent repeatedly.
- YAML changes are grouped before being written.
- Configuration files are written atomically on a dedicated writer thread.
These improvements reduce unnecessary calculations, packet traffic, and disk activity, especially on servers with more players, regions, advancements, or frequently updated tablists.
🔐 Permission Fixes
NeoTab now performs additional permission checks before executing delayed or interactive actions.
- GUI clicks recheck the required granular permission.
- Delayed chat callbacks verify permissions again before applying changes.
- Scoreboard parent permissions now inherit correctly.
- ActionBar Extras parent permissions now inherit correctly.
This prevents players from completing actions after their permissions have been removed or changed.
💬 Modern Paper API Support
NeoTab now uses modern Adventure-based Paper APIs for:
- Asynchronous chat events
- Inventory titles
- Scoreboard components
Deprecated scoreboard APIs and Gradle resource-processing APIs have also been removed.
This improves compatibility with modern Paper versions and prepares NeoTab for future updates.
🔧 Lifecycle & Configuration Fixes
- Failed update checks no longer leave outdated results cached.
- The global ActionBar setting is now respected by timer and stopwatch services.
- Legacy ActionBar Timer configuration paths remain supported when editing timer text.
- Region Profile boundaries stay consistent regardless of whether Pos1 or Pos2 is edited first.
- Join and quit timing issues have been resolved.
- YAML persistence is safer and more resistant to interrupted writes.
🧪 Testing & Validation
NeoTab 1.3.3 includes regression tests covering:
- Active external scoreboard ownership
- Restoration of NeoTab’s previously known scoreboard
- Restoration of an empty and available scoreboard
- YAML persistence
- Version comparison and ordering
- Timer parsing
- Canonical Region Profile boundaries
The complete Gradle build and all regression tests pass without deprecation warnings.
The plugin was also runtime-tested on:
- Paper 1.20.6
- Paper 1.21.11
- Paper 26.1.2
Testing included plugin startup, reloads, commands, RCON usage, configuration persistence, and clean server shutdowns.
✅ Compatibility
- Server software: Paper
- Minecraft: 1.20.6+
- Java: Java 21 or newer
- Optional integrations: LuckPerms, PlaceholderAPI, WorldEdit and FastAsyncWorldEdit
📦 Updating
NeoTab 1.3.3 is a recommended update for everyone currently using a 1.3.x version, especially servers that use additional scoreboard or temporary sidebar plugins.
Replace the previous NeoTab .jar file with the new version and restart your server. Existing configuration files will continue to be used.
As always, creating a backup before updating server plugins is recommended.
Thank you for using NeoTab! 💜
