Vanish-3.0.1.jar

Details

  • Filename
    Vanish-3.0.1.jar
  • Uploaded by
  • Uploaded
    Apr 17, 2026
  • Size
    107.30 KB
  • Downloads
    162
  • MD5
    ea209df9b51201859b77313d80b71e3c

Supported Bukkit Versions

  • 26.1
  • 26.1.1
  • 26.1.2
  • 1.21.11
  • 1.21.10
  • 1.21.9
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.1
  • 1.21.2
  • 1.21.3
  • 1.21.4
  • 1.21.5-Snapshot
  • 1.21
  • 1.20.6
  • 1.20.5
  • 1.20.5-Snapshot
  • 1.20.4
  • 1.20.3-Snapshot
  • 1.20.3
  • 1.20.2
  • 1.20.1
  • 1.20

Changelog

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