Vanish++
The ultimate vanish solution for your server!
Vanish++ provides a clean, robust, and feature-rich way to manage vanished players. Designed with performance and stability in mind, it's the perfect tool for staff who need to observe without being seen. From faking join/leave messages to silent container opening, Vanish++ handles all the small details to create a seamless and immersive stealth experience.
With instant, asynchronous saving, your vanished players' states are always safe, even through server crashes, all without causing any server lag.
✨ Features
Core Vanish Functionality
- Toggle Vanish: Players with permission can become completely invisible to normal players using /vanish.
- Vanish Other Players: Staff can vanish other players using /vanish <player>.
- Persistent Vanish: A player's vanished state is saved instantly and persists through server restarts, crashes, and logouts.
- On-Join Re-Vanish: Players who log off while vanished will automatically be put back into vanish when they rejoin.
Visibility & Immersion
- Complete Invisibility: Vanished players are hidden from the tab list, the server list player count (on ping), and are physically invisible.
- See Permission: Players with the vanishpp.see permission can see vanished players, their tab list prefix, and receive special notifications.
- Vanish Prefix: Vanished players have a configurable [VANISHED] prefix in the tab list, visible only to staff.
- Action Bar Indicator: Vanished players see a persistent, configurable message on their action bar to remind them they are hidden.
- Fake Join/Leave Messages: When a player vanishes, a "Player left the game" message is shown to normal players. When they unvanish, a "Player joined the game" message is shown. This uses the server's own translatable messages for maximum immersion across all languages.
- Silent Join/Quit: Staff with vanishpp.see receive discreet "silent join/quit" messages when a vanished player connects or disconnects.
- Staff Notifications: Staff are notified when another staff member uses the /vanish command on someone.
Gameplay Integration & Stealth
- Block Trigger Prevention: Vanished players will not trigger pressure plates, tripwires, or sculk sensors.
- Silent Chests: Opening chests and other containers does not play the opening/closing animation for other players.
- Mob Spawning: Vanished players do not affect mob spawning or mob caps around them.
- Silent Advancements: Advancement announcement messages are hidden from normal players when earned by a vanished player.
- Silent Death Messages: Death messages from vanished players are hidden from normal players.
- Hidden Chat: Chat messages sent by a vanished player are only visible to other players with the vanishpp.see permission and are formatted with the vanish prefix.
Technical & Performance Features
- Asynchronous Saving: Configuration and vanish data are saved to disk on a separate thread the moment a player's state changes, ensuring no data loss from crashes and no lag on the main server thread.
- Robust State Management: The plugin correctly handles edge cases like server restarts or crashes while a player is vanished, preventing glitched states (e.g., a visible player with a vanish prefix).
- Dynamic Permission Updates: When a player is opped or de-opped, their ability to see vanished players is updated instantly without requiring a rejoin.
- High Performance: Designed to be lightweight and have a minimal impact on server performance.
Configuration
- Fully Configurable: Nearly every feature, from messages and prefixes to gameplay effects, can be enabled, disabled, or customized in the config.yml file.
- Clear Data Separation: The config.yml has a clear, decorative header separating user-configurable settings from the plugin's internal data storage to prevent accidental edits.
Commands
- /vanish - Toggles your own vanish state.
- /vanish <player> - Toggles another player's vanish state.
Permissions
- vanishpp.vanish - Allows a player to use the /vanish command on themselves. (Default: OP)
- vanishpp.vanish.others - Allows a player to use the /vanish command on other players. (Default: OP)
- vanishpp.see - Allows a player to see vanished players, their chat, and all special notifications. (Default: OP)
⚙️ Setup & Configuration
- Drop the Vanishpp.jar file into your server's plugins folder.
- Start or restart your server.
- All configuration options can be found and modified in the generated plugins/Vanishpp/config.yml file. A reload or restart is not required for changes to take effect if you use the /vanish reload command in the future (though this command is not yet implemented).
Requirements
- Paper (or a Paper fork like Purpur) - This plugin uses modern Paper APIs for performance and stability. It is not compatible with Spigot or Bukkit due to overrides in the playerlist and player count in the server view and other reasons.
There are no other plugin dependencies.
Feedback
If you have any questions or requests please leave them in a thread or a command!
License
Here's a link to the license.