3.1.2latest3 weeks ago Vanish v3.1.2 - Bug Fixes, Performance Boost & bStats Targeted fixes, a full internal cleanup and technical improvements for a more stable and performant Vanish. Bug Fixes · Fixed: The vanish metadata key is now a single static final constant and vanish checks no longer go through player metadata - reduces garbage collection overhead · Fixed: Fake join/quit messages no longer use the deprecated Bukkit.broadcastMessage() - they are sent to every player and the console directly, future-proof · Fixed: Inventory close events now skip non-vanished players immediately · Impact: Reduces unnecessary processing for 100% of non-staff players · Fixed: /vanish <player> with an unknown or offline name no longer toggles your own vanish · Fixed: Using a subcommand without permission no longer toggles your own vanish · Fixed: A player who logged out while vanished is no longer left hidden from others after rejoining visible · Fixed: Players with vanish.join but without vanish.see can no longer see other vanished players · Fixed: Unvanishing no longer makes players in creative mode or with /fly fall out of the air · Fixed: Items can no longer be dragged or placed into the Vanish menus · Fixed: Menus no longer open a new inventory inside the click event, which could cause inventory glitches · Fixed: Menus use the new accent color right after /vanish color or /vanish reload · Fixed: Silent containers no longer open twice (once per hand) · Fixed: Players in the silent container spectator fallback get their game mode back when they disconnect or the server stops · Fixed: The pressure plate protection no longer overrides other plugins that cancelled the interaction · Fixed: vanish.* now grants every Vanish permission and respects negated child permissions · Fixed: A YAML error in config.yml no longer causes the file to be overwritten · Fixed: The Dynmap integration now also works on Spigot (the plugin was looked up with the wrong name) · Fixed: With ProtocolLib, silent containers no longer show the closing animation or play the closing sound to nearby players when the container was open for more than 2.5 seconds · Fixed: Silent containers respect chest protection plugins, and sneak-clicking a container with an item in hand uses the item (e.g. places the block) instead of opening the container · Fixed: A vanished player is no longer left in spectator mode when another plugin prevents a container from opening · Fixed: Join and quit messages set by other plugins are now also hidden for vanished players · Fixed: Plugins that handle the quit after Vanish (such as Discord bridges) still see a quitting vanished player as vanished and no longer announce the quit · Fixed: Changing the plugin color now sends a confirmation, both with /vanish color <color> and in the color menu · Fixed: Vanished players no longer show up when hovering over the player count in the server list on Paper 1.20.6 · Fixed: Advancements of vanished players are no longer announced on Spigot 1.21.11 and newer without ProtocolLib (the game rule was renamed, which caused an error on every vanish) · Fixed: No more ProtocolLib errors in the console when vanished players open containers on 1.21.11, and the container sounds are hidden there again · Fixed: Vanish now disables itself with a clear error message if it cannot start on an incompatible server Stability & Thread Safety (suggested by pupserjapi7-crypto) · Dependency handling: ProtocolLib, PlaceholderAPI and Dynmap are soft dependencies that load first when present; a missing or broken integration is logged and skipped instead of breaking Vanish · No disk I/O on the main thread: players.yml is read once at startup and cached in memory - joins and quits never touch the disk · Asynchronous saving: changes to players.yml are written on a background thread and flushed when the server stops; an unreadable file is never overwritten · Thread-safe vanish state: vanished players are tracked in a concurrent set with O(1) lookups, safe for packet listeners, PlaceholderAPI and the API · Impact: No lag spikes on join/quit and no race conditions with async plugins Technical Improvements · Config Reload: /vanish reload now refreshes ALL cached values instantly (settings, messages, player data, boss bar and advancement handling) · Impact: No more server restarts needed after config changes - ever · VanishPlayer Caching: Player objects are now cached and reused · Performance: Eliminates redundant object creation on high-frequency events · Gradle Shadow: Dependencies properly relocated - no more conflicts with other plugins · Impact: Better compatibility with plugin ecosystems · Clean Codebase: The custom framework was replaced by standard Bukkit structure (one plugin class, plain listeners, a TabExecutor command and typed config access), Lombok was removed and unit tests were added · Impact: Easier to maintain, review and contribute to · Tested: 66 automated tests on a mock server, plus live tests with bot players on Spigot and Paper from 1.20.1 to 26.2 (26.3: startup and console commands), with and without ProtocolLib, PlaceholderAPI and Dynmap · Impact: The fixes above were verified on real servers across the supported range Security & Dependencies · Gradle 9.8.1: Fixes three high-severity Gradle security advisories (build tooling only - servers were never affected) · Verified downloads: The Gradle Wrapper checks the distribution checksum, and third-party repositories may only serve their own artifacts · Upgraded: Shadow 9.6.1, PlaceholderAPI 2.12.3, JUnit 6.1.3 - removed the unused Gson and Lombok dependencies · Pinned: Libraries pulled in by the new test suite (commons-lang3, log4j-api, plexus-utils) are forced to patched versions - test only, never shipped with the plugin · Scanned: All build and test dependencies checked against OSV.dev - 0 known vulnerabilities For Developers · VanishAPI is unchanged; getVanishedPlayers() now returns a snapshot · The main class is now nl.fronsky.vanish.VanishPlugin (was Main) · Removed internal helpers: VanishPlayer.getPlayer(...), VanishPlayer.setState(...) and VisibilityChangeEvent.getData() / getProtocolLib() / isProtocolLibActive() - use VanishAPI instead · Errors inside API calls are no longer silently swallowed · Tests run on a mock server with mock players (MockBukkit); Gradle downloads JDK 21 for the tests automatically, while the plugin itself stays on Java 17 Performance Summary · VanishPlayer caching: fewer object allocations per event · Config reload: instant refresh, no restart · Event filtering: non-vanished players skip processing entirely · Player data: no file I/O on the main thread · Vanish checks: O(1) and thread-safe bStats Metrics · Anonymous, opt-out usage statistics · Opt out for all plugins at once in plugins/bStats/config.yml · See live data at https://bstats.org/plugin/bukkit/Fronsky Vanish · Impact: Helps prioritize development based on real usage data Config: No config changes required - the new optional message plugin_color_changed in messages.yml falls back to its default Compatibility: Spigot/Paper 1.20 - 26.1+ | Java 173.1.1Jul 9, 2026 Vanish v3.1.1 - Tab Completion & BossBar Customization Two highly requested quality-of-life improvements! Compatibility TAB Plugin Support Vanished players are now properly hidden everywhere when the TAB plugin is installed. · Vanished staff no longer show up when hovering over the player count in the server list · Vanished players are now correctly hidden from TAB's tab list, nametags and sorting · Works on Spigot, Bukkit and Paper, and across servers behind a BungeeCord/Velocity proxy (when TAB runs on the backend servers) · Impact: TAB and Vanish now work together without leaking vanished players Quality of Life Tab Completion All subcommands now suggest contextual arguments · /vanish tp → suggests online players · /vanish sound → suggests on/off · /vanish color → suggests available colors · Impact: Faster command usage, no more guessing arguments BossBar Customization Make the vanish indicator yours · Config: bossbar.enabled: true/false (disable entirely!) · Config: bossbar.title: "&bYou are invisible" · Config: bossbar.style: SOLID / SEGMENTED_6 / SEGMENTED_10 / etc. · Impact: Full control over the visual indicator - or hide it completely Bug Fixes Advancement Announcements No Longer Leak (by RobinBr26) Vanished players no longer reveal themselves through advancement messages in chat. · Suppresses advancement announcements while players are vanished, including datapack advancements such as BlazeandCave · Restores the previous world gamerule values once nobody is vanished anymore · Keeps a packet-level fallback for advancement messages that still get sent · Avoids revoking advancements, which caused datapacks to grant the same advancement repeatedly · Config: disabled-actions.advancements: true/false · Impact: No more accidental vanish reveals through advancement chat leaks New Config Options: 4 new settings added Compatibility: Spigot/Paper 1.20 - 26.1+ | Java 173.1.0Jun 19, 2026 Vanish v3.1.0 - Night Vision, Fly Mode & Notifications The first feature update since v3.0! Focused on making vanish more comfortable. New Features Night Vision See in the dark while vanished - perfect for moderating caves and dark builds · Config: vanish-effects.night-vision: true/false · Automatically removed when you unvanish (no lingering effects) · Impact: Staff can moderate without torches or switching to creative mode Fly Mode Automatically fly when you vanish, even in survival mode · Config: vanish-effects.allow-flight: true/false · Your original flight state is restored when you unvanish · Impact: Move around the map faster while moderating - no gamemode switching needed Action Bar & Title Notifications Clear visual feedback when your vanish status changes · Config: notifications.actionbar: true / notifications.title: true · Beautiful, non-intrusive notifications that don't spam your chat · Impact: Always know your vanish state at a glance New Config Options: 4 new settings added Compatibility: Spigot/Paper 1.20 - 26.1+ | Java 173.0.2May 15, 2026 Vanish v3.0.2 | Performance & Code Quality Major under-the-hood improvements that make Vanish faster and more reliable. Bug Fixes · Fixed: Players with vanish.join permission but silent mode disabled are now properly auto-vanished on join · Impact: Auto-vanish works correctly regardless of silent mode setting · Fixed: Redundant permission checks on player join removed · Performance: ~15% faster join event handling · Fixed: VanishPlayer no longer performs file I/O on every single server event · Performance: MASSIVE improvement - up to 10× less disk reads on busy servers · Fixed: Internal state checks no longer have unintended side effects · Fixed: Color selection GUI no longer crashes on certain glass colors Performance Summary · Event handling: up to 10× less disk I/O · Join processing: ~15% faster · Memory: reduced object allocation Config: No config changes required Compatibility: Spigot/Paper 1.20 - 26.1+ | Java 173.0.1-1May 1, 2026 Vanish v3.0.1-1 | Hotfix & Documentation Quick follow-up to v3.0.1 with small fixes and finalized documentation. Bug Fixes: · Minor fixes based on community feedback from v3.0.1 Config: No config changes required Compatibility: Spigot/Paper 1.20+ | Java 173.0.1Apr 17, 2026 Vanish v3.0.1 | Stability Hotfix & Clean Code Refactoring We've addressed the most critical issues found since v3.0.0 AND performed a complete code quality overhaul. This update is recommended for all servers. Critical Fixes · Fixed: /vanish reload now properly refreshes all disabled action settings — no server restart needed ·Impact: Config changes apply instantly, saving server admins time · Fixed: Server shutdown no longer causes ConcurrentModificationException when players are vanished ·
Impact: Clean shutdown guaranteed, no more error spam in console · Fixed: Vanished player tracking is now fully thread-safe when using ProtocolLib ·
Impact: Eliminates rare crashes on high-traffic servers with ProtocolLib Bug Fixes · Fixed: Rare NullPointerException when loading language messages during plugin startup · Fixed: /vanish tp no longer crashes if the target disconnects at the exact same moment ·
Impact: Safer teleportation, especially on busy servers Code Quality Refactoring (SOLID Principles) · Refactored: All 13 subcommands now use proper execute() pattern instead of constructor side-effects ·
Impact: More maintainable, testable, and extensible command system · Refactored: Color parsing logic centralized — was duplicated across 3 files ·
Impact: Single source of truth for color mapping, no more PINK/PURPLE mismatches · Refactored: GUI inventory creation extracted into shared GuiBuilder utility ·
Impact: ~200 lines of duplicate code removed, consistent GUI behavior · Refactored: Container opening logic extracted into dedicated SilentContainerHandler ·
Impact: DisabledActions no longer a 235-line monolith · Refactored: Config reads centralized through Data accessor methods instead of inline parsing ·
Impact: Single source of truth, easier to maintain and test Clean Code Improvements · Fixed: Result class methods renamed to standard Java camelCase conventions · Fixed: Removed ~150 lines of dead/unused code across 6 files · Fixed: Removed assert statement in production code → proper null checks · Fixed: Inconsistent placeholder format standardized to {player} everywhere · Fixed: YmlFile no longer loads configuration file twice on reload · Fixed: Mutable field in CommandHandler → thread-safe local variable · Fixed: NullPointerException used as control flow → proper null checks · Fixed: Deprecated HoverEvent constructor replaced with modern Text content API Config: No config changes required — drop-in replacement for v3.0.0 Compatibility: Spigot/Paper 1.20 — 26.1+ | Java 17
3.0.0Mar 2, 2026 What’s new · Minecraft support: 1.20 -> 1.21+ · Java 17 required · Optional integrations · ProtocolLib v5.4.0: improved hiding behavior and fully silent containers (packet-level suppression) · PlaceholderAPI v2.12.2: %vanish_...% placeholders · Dynmap: hide vanished players from the map · New overview commands · /vanish permissions - permissions overview · /vanish placeholders - placeholder overview · /vanish info - improved plugin/build info (stable build-id per jar) Improvements · Redesigned "premium" chat layout (cleaner header/footers, aligned formatting) · Pagination for longer outputs (less chat spam; Prev/Next only shown when applicable) · GUI polish · consistent new GUI design · paging fixed for /vanish sound (and matching robustness applied so navigation works reliably) Fixes · Silent containers expanded/fixed · barrel and shulker open/close sound suppression · barrel and shulker animation suppression (best-effort via packet filtering) · silent-container flow now correctly activates for barrels as well · More stable GUI clicking · improved null-safety in click handling to prevent edge-case NPEs Notes for server owners · Recommended: backup, then delete plugins/Vanish/ before updating to v3.0.0 to avoid old config/data conflicts. · Install ProtocolLib v5.4.0 for the best vanish accuracy and silent-container behavoir. · Install PlaceholderAPI v2.12.2 only if you use placeholders. · Install Dynmap only if you want vanished players hidden on the dynmap.2.1.32.1.2Feb 8, 2026 · Moved from fronsky.com to fronsky.nl, so download file has changed. · Updated all components to their latest versions. · Resolved an unchecked call warning in the Players GUI event.2.1.22.1.3Feb 7, 2026 · Moved from fronsky.com to fronsky.nl, so download file has changed · Updated the code, so everything is on this new domain · Updated all components to their latest versions. · Resolved an unchecked call warning in the Players GUI event.v2.1.2Feb 7, 2026 · Moved from fronsky.com to fronsky.nl, so download url has changed.2.1.1Jul 19, 2024 · Fixed a bug with the message of the reload command. · Fixed that you now can edit the message for the silent command.2.1.0Jul 15, 2024 A setting has been added to change the preferred way of joining the server silently: yes or no.2.0.0Jun 4, 2024 Fronsky News: Updating Vanish to 2.0.0! · More customization options for the config.yml and messages.yml files. · The disappear system is improved and more secure by using ProtocolLib (if installed as a separate plugin). · Also when using the Dynmap plugin, and are going into vanish mode, you will also be hidden from the Dynmap. · Existing commands have been rewritten with a graphical user interface (GUI) for a better user experience. · New commands are added: · Send fake join/quit messages. · Modify the sound effect when going into vanish mode. · See a list of all vanished players. · Teleport to a player secretly, including those in vanish mode.1.5Jan 1, 2024 We are sorry for the unconvenient " spam" message from that was implemented in the previous version (v1.4). · Spigot Framework v1.2 was implemented. · Update to the general code. · Removed the 5 minute message for both console and players · This message will now only show 1x in the console only when enabling the plugin.1.4Oct 30, 2023 · Fixed issue with the MessageTask1.3Sep 14, 2023 · Fixed issues with configuration files of the plugin. · Upgraded build file of the plugin. · Made DisabledActions work again. · Fixed that the commands will now send the right messages instead of an error.1.2Jun 5, 2023 We are excited to announce the release of Vanish v1.2, a versatile Minecraft plugin that allows players to disappear from view and join or leave the game silently. This update introduces new features, improvements, and bug fixes to enhance your gameplay experience.1.1.2Feb 7, 2023 We are happy to announce that the issue with the 'help' command in the Vanish plugin has now been resolved. You can now use the command to access the necessary information and support for the plugin.1.1.1Feb 3, 2023 We are excited to announce an update for the Vanish plugin, now including Fronsky Framework version 1.0.4. This upgrade replaces the previous version 1.0.3 and brings new features and improved performance. Thank you for your continued support and we hope you enjoy the new enhancements in the Vanish plugin with Fronsky Framework 1.0.4.1.1.0Jan 28, 2023
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta