Sueta

StatsPlugin

3.0

Simple GUI stats plugin for Paper/Spigot

·Plugin
  1. 3.0latestStatsPlugin 3.0last week

    Changelog

    3.0.0

    A complete overhaul of StatsPlugin.
    New
    - Redesigned GUI with category tabs, server rank on each stat and daily gains - 22 stats (was 8): distances (walked, sprinted, swum, elytra, ridden), jumps, nights slept, fish caught, animals bred, villager trades, items enchanted, logins and more - Leaderboards with All time / Today / This week / This month, paging up to 100 players and your own rank - /stats compare <player> to compare two players stat by stat - /stats toggle to hide your stats from other players and the leaderboards - /stats info [player] for a chat summary, plus console support for top and info - Automatic import of players who joined before the plugin was installed (also /stats import) - Much more complete PlaceholderAPI support (leaderboard names/values, ranks, per-period values, K/D, dates) - 9 languages: English, Japanese, Simplified Chinese, Spanish, German, French, Brazilian Portuguese, Russian, Korean - Modrinth update notifications for operators
    Fixed
    - Leaderboards were empty for players who had not been online since the plugin was installed - Money tracking did not work when the economy plugin registered after StatsPlugin - PlaceholderAPI requests could block the main thread - Per-block database writes caused lag when many blocks were placed or broken; writes are now batched - GUI item names and lore were displayed in italics - Player lookup no longer contacts Mojang for unknown names
    Changed
    - StatsPlugin is now Paper-only (Paper 1.21+ and Paper forks). Spigot is not supported - Existing databases are migrated automatically
    10 downloads
  2. 2.0StatsPlugin 2.0.0Aug 11, 2026

    StatsPlugin v2.0

    A major update from v1.0 with significant improvements to accuracy, security, performance, GUI/UX, and functionality. This update fixes several important bugs and security-related issues while completely redesigning the statistics GUI and adding leaderboards, permissions, PlaceholderAPI support, and bStats integration.

    Bug Fixes & Security

    Fixed statistics being one update behind
    Fixed an issue where Database.add() inserted new player statistics with a value of 0 on the first increment. As a result, the player's first block placement, block break, or other tracked action was not counted. The UPSERT logic has been fixed so the first action is now recorded correctly.
    Fixed cancelled actions being counted
    BlockBreakEvent and BlockPlaceEvent did not check whether the event had been cancelled. This caused actions cancelled by plugins such as WorldGuard to still be counted in statistics. The listeners now use ignoreCancelled = true, so cancelled events are ignored.
    Fixed possible main-thread freezes
    /stats <name> previously used Bukkit.getOfflinePlayer(String) synchronously. For uncached player names, this could trigger communication with the Mojang API on the main server thread, potentially causing a temporary server freeze. Player name resolution has been moved to an asynchronous process.
    Improved SQL query safety
    Several database operations previously concatenated column names directly into SQL strings. This has been replaced with a StatColumn enum whitelist system, ensuring that user input can never be directly inserted into SQL column names. This significantly improves the overall safety of the database layer.
    Fixed database resource leaks
    Connection, PreparedStatement, and ResultSet objects were not being properly closed in v1.0. The database implementation now uses try-with-resources, and database connections are properly closed when the plugin is disabled.
    Fixed offline player statistics
    Although v1.0 advertised offline player support, Kills, Deaths, Playtime, and Mob Kills were only displayed when the target player was online. The plugin now uses OfflinePlayer.getStatistic() so statistics can be displayed even when the player is offline.
    Fixed non-functional money statistics
    Money Spent on Shop and Money Made on /sell were previously displayed as 0 because the functionality was never actually implemented. This has been replaced with a real system that periodically tracks Vault balance changes using StatSyncTask. The statistics are now: * Money Earned * Money Spent
    Improved GUI event handling
    The GUI previously identified itself by checking whether the inventory title contained "Stats". This could potentially cause inventories from other plugins with similar titles to be intercepted. The plugin now uses a dedicated InventoryHolder implementation to reliably identify its own GUI. Inventory dragging is also prevented inside the statistics GUI.

    UI / UX Improvements

    Completely redesigned statistics GUI
    The old 27-slot GUI has been replaced with a new 45-slot decorated interface. The new GUI includes: * Decorative borders * Player head display * Refresh button * Close button * Leaderboard button The statistics interface is now much more polished and easier to navigate.
    Migrated to Adventure Component API
    The legacy ChatColor API has been removed. The plugin now uses Paper's recommended Adventure Component API for modern text and formatting support.

    New Features

    Server-wide leaderboards
    Added: /stats top [stat] This opens a server-wide leaderboard GUI. Features include: * Statistics category switching * Player ranking display * Click a player to view their statistics * Server-wide rankings
    Permission system
    Added permission nodes: * statsplugin.use * statsplugin.others * statsplugin.top * statsplugin.reload These allow server administrators to control access to different parts of the plugin.
    Command tab completion
    Added tab completion for the /stats command.
    PlaceholderAPI support
    Added optional PlaceholderAPI integration. Example: %statsplugin_kills% Additional statistics are also available through PlaceholderAPI.
    bStats support
    Added optional bStats integration for anonymous plugin usage statistics. bStats can be disabled through the plugin configuration.

    Summary

    StatsPlugin v2.0 is a major rewrite and improvement over v1.0. This release focuses on: * More accurate statistics * Better database safety * Improved performance * Better handling of offline players * Improved event handling * A completely redesigned GUI * Server-wide leaderboards * Permissions * PlaceholderAPI integration * bStats integration * Modern Adventure API support StatsPlugin is now more secure, reliable, and feature-complete for production Minecraft servers.
    646 downloads
  3. 2.0.0StatsPlugin 2.0.0Aug 11, 2026

    StatsPlugin v2.0.0

    A major update from v1.0 with significant improvements to accuracy, security, performance, GUI/UX, and functionality. This update fixes several important bugs and security-related issues while completely redesigning the statistics GUI and adding leaderboards, permissions, PlaceholderAPI support, and bStats integration.

    Bug Fixes & Security

    Fixed statistics being one update behind
    Fixed an issue where Database.add() inserted new player statistics with a value of 0 on the first increment. As a result, the player's first block placement, block break, or other tracked action was not counted. The UPSERT logic has been fixed so the first action is now recorded correctly.
    Fixed cancelled actions being counted
    BlockBreakEvent and BlockPlaceEvent did not check whether the event had been cancelled. This caused actions cancelled by plugins such as WorldGuard to still be counted in statistics. The listeners now use ignoreCancelled = true, so cancelled events are ignored.
    Fixed possible main-thread freezes
    /stats <name> previously used Bukkit.getOfflinePlayer(String) synchronously. For uncached player names, this could trigger communication with the Mojang API on the main server thread, potentially causing a temporary server freeze. Player name resolution has been moved to an asynchronous process.
    Improved SQL query safety
    Several database operations previously concatenated column names directly into SQL strings. This has been replaced with a StatColumn enum whitelist system, ensuring that user input can never be directly inserted into SQL column names. This significantly improves the overall safety of the database layer.
    Fixed database resource leaks
    Connection, PreparedStatement, and ResultSet objects were not being properly closed in v1.0. The database implementation now uses try-with-resources, and database connections are properly closed when the plugin is disabled.
    Fixed offline player statistics
    Although v1.0 advertised offline player support, Kills, Deaths, Playtime, and Mob Kills were only displayed when the target player was online. The plugin now uses OfflinePlayer.getStatistic() so statistics can be displayed even when the player is offline.
    Fixed non-functional money statistics
    Money Spent on Shop and Money Made on /sell were previously displayed as 0 because the functionality was never actually implemented. This has been replaced with a real system that periodically tracks Vault balance changes using StatSyncTask. The statistics are now: * Money Earned * Money Spent
    Improved GUI event handling
    The GUI previously identified itself by checking whether the inventory title contained "Stats". This could potentially cause inventories from other plugins with similar titles to be intercepted. The plugin now uses a dedicated InventoryHolder implementation to reliably identify its own GUI. Inventory dragging is also prevented inside the statistics GUI.

    UI / UX Improvements

    Completely redesigned statistics GUI
    The old 27-slot GUI has been replaced with a new 45-slot decorated interface. The new GUI includes: * Decorative borders * Player head display * Refresh button * Close button * Leaderboard button The statistics interface is now much more polished and easier to navigate.
    Migrated to Adventure Component API
    The legacy ChatColor API has been removed. The plugin now uses Paper's recommended Adventure Component API for modern text and formatting support.

    New Features

    Server-wide leaderboards
    Added: /stats top [stat] This opens a server-wide leaderboard GUI. Features include: * Statistics category switching * Player ranking display * Click a player to view their statistics * Server-wide rankings
    Permission system
    Added permission nodes: * statsplugin.use * statsplugin.others * statsplugin.top * statsplugin.reload These allow server administrators to control access to different parts of the plugin.
    Command tab completion
    Added tab completion for the /stats command.
    PlaceholderAPI support
    Added optional PlaceholderAPI integration. Example: %statsplugin_kills% Additional statistics are also available through PlaceholderAPI.
    bStats support
    Added optional bStats integration for anonymous plugin usage statistics. bStats can be disabled through the plugin configuration.

    Summary

    StatsPlugin v2.0.0 is a major rewrite and improvement over v1.0. This release focuses on: * More accurate statistics * Better database safety * Improved performance * Better handling of offline players * Improved event handling * A completely redesigned GUI * Server-wide leaderboards * Permissions * PlaceholderAPI integration * bStats integration * Modern Adventure API support StatsPlugin is now more secure, reliable, and feature-complete for production Minecraft servers.
    447 downloads
  4. 1.0First ReleaseMar 7, 2026

    StatsPlugin

    StatsPlugin is a lightweight Minecraft plugin for Paper and Spigot servers that allows players to view their statistics in a clean GUI menu. Players can open a stats menu using /stats, or view another player's stats using /stats <player>. The plugin supports offline players and displays important statistics such as money, kills, deaths, playtime, blocks placed, and more. ---

    Features

    • Simple and clean GUI stats menu • /stats command to view your own stats • /stats <player> to view other players • Supports offline players • Accurate Blocks Placed / Blocks Broken tracking • Playtime displayed as hours and minutes • Economy integration via Vault • Money display using K / M / B format • Prevents item movement in the GUI ---

    Stats Included

    The GUI shows the following statistics: * Money * Kills * Deaths * Playtime * Blocks Placed * Blocks Broken * Mobs Killed * Money Spent on Shop * Money Made on /sell ---

    Commands

    /stats
    /stats <player>
    ---

    Requirements

    This plugin requires: Paper or Spigot 1.21+* Vault* * An economy plugin (recommended: EssentialsX) ---

    Installation

    1. Download the latest release 2. Place the .jar file into your server's plugins folder 3. Restart your server ---

    Compatibility

    Tested on: * Paper 1.21.1 * Spigot 1.21.1 ---

    License

    This project is licensed under the MIT License.
    745 downloads

Similar projects

Plugin →