COWMODSКаталог модов
NDPlayerStats

ВЕРСИИ (8)

release

NDPlayerStats 1.5.3

1.5.3
25 сент. 2026 г.340Minecraft: 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Скачать
Что нового
## Fixed * Leaderboard "Total players" now matches the actual count. * Empty leaderboard pages now show a message. * K/D leaderboard no longer includes players with 0 kills. * Rank now matches the leaderboard (requires at least 1 kill). * Leaderboards no longer include players with 0 values. * YAML and SQL now behave the same. * Hardcoded leaderboard messages moved to `messages.yml`. * Update check no longer spams the console. * Update check no longer sends an HTTP request on every OP join (cached for 1 hour). * Update message now shows the number of missing versions. * `/ndps update` now uses the same message as on join. ## Added * `/leaderboard playtime` — new leaderboard mode by play time. <details> <summary>config.yml</summary> ``` # NDPlayerStats Configuration v1.5.3 # Author: Kubass1 - https://kubass.cz/ # ⚠ IMPORTANT: Changing database type requires server restart! # Edit this file, save it, then restart the server. # ============================================================ # DATABASE SETTINGS # ============================================================ database: # Database type: YAML, MYSQL, or SQLITE # ⚠ WARNING: Changing this requires server restart! type: YAML # SQLite settings (only used when type: SQLITE) sqlite: # Name of the SQLite database file filename: database.db # MySQL settings (only used when type: MYSQL) mysql: # MySQL server address host: localhost # MySQL server port port: 3306 # Name of the database to use database: mc_server # Database username username: root # Database password password: '' # Prefix for all table names (useful for multiple plugins sharing one database) table-prefix: ndps_ # Enable SSL for MySQL connection ssl: false # ============================================================ # UPDATE CHECKER # ============================================================ # Enable or disable automatic update checking check-update: true # ============================================================ # LEADERBOARD SETTINGS # ============================================================ leaderboard: # Enable or disable the leaderboard feature enabled: true # How many players to show in the leaderboard size: 10 # How often to auto-update leaderboard cache in seconds (0 = disabled) update-interval: 60 # Maximum position for placeholders (e.g. %ndplayerstats_kills_100%) max-position: 100 # Default mode for /leaderboard: "kills", "kd" or "playtime" default-mode: kills # Custom colors for each rank position colors: '1': '&6' # #1 - Gold '2': '&7' # #2 - Silver '3': '&8' # #3 - Bronze '4': '&e' # #4 - Yellow '5': '&e' # #5 - Yellow '6': '&e' # #6 - Yellow '7': '&e' # #7 - Yellow '8': '&e' # #8 - Yellow '9': '&e' # #9 - Yellow '10': '&e' # #10 - Yellow others: '&f' # All other ranks - White # ============================================================ # RANK SETTINGS # ============================================================ ranks: # Enable or disable the ranking system completely enabled: true # Show [Unranked] for players with no stats show-unranked: true # Text to display for unranked players unranked-text: Unranked # Color for unranked text unranked-color: '&7' # Maximum rank number to display (ranks above this will show as 999+) max-display-rank: 999 # Show [999+] for ranks above max-display-rank show-max-plus: true # Text for ranks above max-display-rank max-plus-text: 999+ # Color for max-plus text max-plus-color: '&8' # Minimum kills required to get a rank minimum-kills: 0 # ============================================================ # ADMIN COMMAND SETTINGS # ============================================================ admin-command: # Allow /ndps lookup to work for offline players lookup-offline-players: true # ============================================================ # STATS COMMAND (/stats) # ============================================================ # All placeholders available for /stats command: # {player} - Player name # {kills} - Total kills # {deaths} - Total deaths # {pvp_kills} - PvP kills # {pve_kills} - PvE kills # {pvp_deaths} - PvP deaths # {pve_deaths} - PvE deaths # {kd} - K/D Ratio (formatted with 2 decimals) # {pvp_kd} - PvP K/D Ratio # {pve_kd} - PvE K/D Ratio # {killstreak} - Current killstreak # {rank} - Player rank (e.g., #5 or "Unranked") # {playtime} - Formatted play time (e.g., "2d 5h 30m") stats-command: 1: "&6&l{player}'s Statistics" 2: "&7══════════════════════════" 3: "&7Kills: &e{pvp_kills}" 4: "&7Deaths: &e{deaths}" 5: "&7K/D Ratio: &e{kd}" 6: "&7Killstreak: &e{killstreak}" 7: "&7Rank: &e{rank}" 8: "&7Play Time: &e{playtime}" 9: "&7══════════════════════════" # Text for players without a rank stats-unranked: "Unranked (no stats)" # ============================================================ # LEADERBOARD COMMAND (/leaderboard) # ============================================================ # All placeholders available for leaderboard: # {size} - Number of players per page # {page} - Current page number # {total} - Total number of pages # {total_players} - Total number of players with stats # {rank} - Player rank position # {color} - Color based on rank position (from config) # {player} - Player name # {kills} - Number of kills # {kd} - K/D Ratio (formatted with 2 decimals) # {playtime} - Formatted play time (e.g., "2d 5h 30m") # {mode} - Current mode (kills, kd or playtime) leaderboard-kills-command: 1: "&8&m &r &6&lTop {size} Players (Kills) - Page {page}/{total} &r &8&m " 2: "&7{rank}. {color}{player} &8- &a{kills} kills" 3: "&7Showing page {page} of {total} (Total: {total_players} players)" 4: "&7Use /leaderboard kills <page> for more" leaderboard-kd-command: 1: "&8&m &r &6&lTop {size} Players (K/D) - Page {page}/{total} &r &8&m " 2: "&7{rank}. {color}{player} &8- &a{kd} K/D" 3: "&7Showing page {page} of {total} (Total: {total_players} players)" 4: "&7Use /leaderboard kd <page> for more" leaderboard-playtime-command: 1: "&8&m &r &6&lTop {size} Players (Playtime) - Page {page}/{total} &r &8&m " 2: "&7{rank}. {color}{player} &8- &a{playtime}" 3: "&7Showing page {page} of {total} (Total: {total_players} players)" 4: "&7Use /leaderboard playtime <page> for more" # Leaderboard status messages leaderboard-disabled: "{prefix}&cThe leaderboard is currently disabled!" leaderboard-no-players: "&7No players with statistics yet!" # ============================================================ # ADMIN LOOKUP COMMAND (/ndps lookup) # ============================================================ # All placeholders available for /ndps lookup: # {player} - Player name # {uuid} - Player's UUID # {kills} - Total kills # {deaths} - Total deaths # {pvp_kills} - PvP kills # {pve_kills} - PvE kills # {pvp_deaths} - PvP deaths # {pve_deaths} - PvE deaths # {kd} - K/D Ratio (formatted with 2 decimals) # {pvp_kd} - PvP K/D Ratio # {pve_kd} - PvE K/D Ratio # {killstreak} - Current killstreak # {highest_killstreak} - Highest killstreak # {playtime} - Formatted play time # {rank} - Player rank (e.g., #5 or "Unranked") admin-lookup-command: 1: "&6=== {player}'s Stats ===" 2: "&eUUID: &f{uuid}" 3: "&eKills: &f{pvp_kills}" 4: "&eDeaths: &f{deaths}" 5: "&eK/D: &f{kd}" 6: "&eKillstreak: &f{killstreak}" 7: "&eHighest Killstreak: &f{highest_killstreak}" 8: "&ePlay Time: &f{playtime}" 9: "&eRank: &f{rank}" 10: "&7══════════════════════════" # ============================================================ # STATISTICS TRACKING # ============================================================ stats: # Track total play time for each player track-play-time: true # Track PvP kills separately (kills against players) track-pvp-kills: true # Track PvE kills separately (kills against mobs/animals) track-pve-kills: true # Track the highest killstreak a player has achieved track-highest-killstreak: true # Death tracking settings death-tracking: # Enable or disable death tracking completely enabled: true # What types of deaths to count count-pvp-deaths: true # Killed by another player count-pve-deaths: true # Killed by mobs/animals count-environmental-deaths: true # Fall damage, fire, lava, etc. count-void-deaths: true # Falling into the void count-suicide-deaths: true # Self-inflicted deaths (e.g. /kill) # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # Minimum playtime required before deaths start counting minimum-playtime-minutes: 0 # ============================================================ # ANTI-KILL ABUSE SETTINGS (TIME-WINDOW MODE) # ============================================================ anti-kill-abuse: # Enable or disable anti-kill abuse protection enabled: true # Maximum kills allowed within the time window against the same player # Example: 2 means if 2 kills happen within time-window-seconds, cooldown activates max-kills-per-victim: 2 # Time window in seconds to check for kills # Example: 30 means if 2 kills happen within 30 seconds, cooldown activates time-window-seconds: 30 # How long the cooldown lasts in seconds after abuse is detected # Example: 60 means after abuse detected, player cannot kill victim for 60 seconds cooldown-seconds: 60 # Should death be counted when a kill is blocked? # true = victim gets death, false = victim does NOT get death count-death-on-abuse: true # Should the killer receive a message when a kill is blocked? notify-killer: true # Should the victim receive a message when a kill is blocked? notify-victim: true # Players with this permission will bypass the check bypass-permission: "ndplayerstats.antiabuse.bypass" # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # ============================================================ # GUI SETTINGS # ============================================================ gui: # Title of the statistics GUI title: '&9{player}''s Statistics' # GUI size (must be multiple of 9, between 9 and 54) size: 27 # Items displayed in the GUI items: # Kills item kills: material: DIAMOND_SWORD slot: 11 name: '&aKills' lore: - '&7Total kills: &f{kills}' - '&7PvP kills: &f{pvp_kills}' - '&7PvE kills: &f{pve_kills}' - '&7Rank: &f{rank}' # Deaths item deaths: material: SKELETON_SKULL slot: 13 name: '&6Deaths' lore: - '&7Total deaths: &f{deaths}' - '&7PvP deaths: &f{pvp_deaths}' - '&7PvE deaths: &f{pve_deaths}' - '&7K/D Ratio: &f{kd}' # Killstreak item killstreak: material: TOTEM_OF_UNDYING slot: 15 name: '&2Killstreak' lore: - '&7Current: &f{killstreak}' - '&7Highest: &f{highest_killstreak}' # Player info item (head) info: material: PLAYER_HEAD slot: 4 name: '&e{player}' lore: - '&7Click to refresh' - '' - '&7Play Time: &f{playtime}' # ============================================================ # PLACEHOLDERAPI SETTINGS # ============================================================ placeholderapi: # Enable or disable PlaceholderAPI support enabled: true # Notify OPs when PlaceholderAPI is enabled/disabled notify-ops: true # ============================================================ # PERFORMANCE SETTINGS # ============================================================ performance: # Cache statistics for better performance cache-stats: true # How long to keep cached data in seconds cache-ttl: 300 # How often to auto-save statistics to disk in seconds save-interval: 300 # Use asynchronous operations to avoid lag async-operations: true # ============================================================ # NOTES # ============================================================ # 🔴 SERVER RESTART REQUIRED FOR: # - Changing database type (YAML/MySQL/SQLite) # - Changing database connection settings # # ✅ Can be reloaded with /ndps reload: # - All other settings including death tracking, ranks, # leaderboard, GUI, performance, anti-kill-abuse # - All text messages in messages.yml ``` </details> <details> <summary>messages.yml</summary> ``` # ============================================================ # NDPlayerStats Messages # All messages can be customized. Use & for color codes. # Placeholders: {prefix}, {player}, {count}, etc. # # NOTE: Templates for /stats, /leaderboard and /ndps lookup # are stored in config.yml (stats-command, # leaderboard-kills-command, leaderboard-kd-command, # leaderboard-playtime-command, admin-lookup-command). # ============================================================ # ============================================================ # PREFIX # ============================================================ # This prefix is used in all messages that contain {prefix} prefix: "&8[&6NDStats&8] &r" # ============================================================ # COMMAND MESSAGES # ============================================================ # Message shown when a player doesn't have permission no-permission: "{prefix}&cYou don't have permission to use this command!" # Message shown when a command is used by console but requires a player player-only: "{prefix}&cThis command can only be used by players!" # Message shown when a player is not found player-not-found: "{prefix}&cPlayer &e{player} &cnot found!" # Message shown when a command is used incorrectly usage: "{prefix}&cUsage: &7{usage}" # ============================================================ # LEADERBOARD MESSAGES # ============================================================ # Message shown when a page has no players (page number too high) leaderboard-empty-page: "&7No players on this page." # Message shown when an invalid page number is entered leaderboard-invalid-page: "{prefix}&cInvalid page number. Use /leaderboard {mode} <page>" # Message shown when the command usage is wrong leaderboard-usage: "{prefix}&cUsage: /leaderboard [kills|kd|playtime] <page>" # ============================================================ # STATS RESET MESSAGES # ============================================================ # Message when a player's stats are reset stats-reset: "{prefix}&aStatistics for &e{player} &ahave been reset!" # Notification sent to the player when their stats are reset stats-reset-notify: "&cYour statistics have been reset by an administrator." # Message when a single stat is reset stats-reset-stat: "{prefix}&aStat &e{stat} &afor &e{player} &ahas been reset!" # Message when an invalid stat name is provided stats-reset-stat-invalid: "{prefix}&cUnknown stat: &e{stat}" # Broadcast message when all stats are reset stats-all-reset: "&cAll player statistics have been reset by an administrator." # Success message when all stats are reset stats-all-reset-success: "&aSuccessfully reset statistics for &e{count} &aplayers!" # Error message when resetting all stats fails stats-all-reset-error: "&cFailed to reset all statistics: {error}" # Warning message before resetting all stats stats-all-reset-warning: "&c&lWARNING: This will reset ALL player statistics!" # Second warning line stats-all-reset-warning2: "&cThis action cannot be undone!" # Confirmation prompt for resetting all stats stats-all-reset-confirm: "&eType &6/resetstatsall confirm &eto reset all stats" # Message when resetting all stats using SQL stats-all-reset-sql: "&eResetting all statistics using SQL..." # ============================================================ # GUI MESSAGES (/statsgui) # ============================================================ gui: # Message when opening GUI for another player opening: "{prefix}&aOpening statistics for &e{player}..." # Message when refreshing the GUI refreshed: "&aStatistics refreshed!" # Message when a player is offline player-offline: "&cPlayer {player} is not online. Use /stats instead." # ============================================================ # ANTI-KILL ABUSE MESSAGES # ============================================================ anti-kill-abuse: # Message shown to killer when kill is blocked # {victim} = name of the victim killer-message: "{prefix}&cYou have killed {victim} too many times! Kill not counted." # Message shown to victim when kill is blocked # {killer} = name of the killer # {death} = "counted" or "not counted" (based on count-death-on-abuse config) victim-message-death-counted: "{prefix}&aKill blocked! You were killed too many times by {killer}. Death counted." victim-message-death-not-counted: "{prefix}&aKill and death blocked! You were killed too many times by {killer}." # ============================================================ # ADMIN COMMAND MESSAGES (/ndps) # ============================================================ admin: # Success message after reload reloaded: "{prefix}&aConfiguration reloaded!" # Error message during reload reload-error: "&cError during reload: {error}" # Help menu help-header: "&6=== NDPlayerStats Admin ===" help-reload: "&e/ndps reload &7- Reload config" help-lookup: "&e/ndps lookup <player> &7- Lookup player stats" help-info: "&e/ndps info &7- Show plugin info" help-help: "&e/ndps help &7- Show this help" help-update: "&e/ndps update &7- Check for updates" help-note: "&cNote: Database type changes require server restart!" update-checking: "&eChecking for updates..." update-failed: "&cFailed to check for updates. Check console for details." # Info command info-header: "&6=== NDPlayerStats Info ===" info-version: "&eVersion: &f{version}" info-author: "&eAuthor: &f{author}" info-database: "&eDatabase: &f{database}" info-ranks: "&eRanks: &f{ranks}" info-papi: "&ePlaceholderAPI: &f{papi}" # Unknown command unknown-command: "&cUnknown command. Use /ndps help" # Database change warnings db-change-warning: "&cDatabase type changed from {old} to {new}!" db-change-restart: "&cDatabase type changes require server restart!" db-change-using: "&eUsing {current} until server restart." # ============================================================ # PLACEHOLDERAPI MESSAGES # ============================================================ # Message when PlaceholderAPI support is enabled papi-enabled: "&a[NDStats] PlaceholderAPI support enabled!" # Example placeholder usage papi-example: "&7Use %ndplayerstats_kills%, %ndplayerstats_pvp_kills%, %ndplayerstats_pve_kills%" # ============================================================ # DATABASE CONNECTION ERROR MESSAGES # ============================================================ # Message when database connection fails db-failed: "&c[NDStats] Failed to connect to database!" # Message to check console for details db-check-console: "&cCheck console for details." # Message showing the configured database type db-config-type: "&eConfig database type: {type}" ``` </details>
release

NDPlayerStats 1.5.2

1.5.2
20 сент. 2026 г.50Minecraft: 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Скачать
Что нового
## Fixed * K/D leaderboard now shows players in the correct order. * Leaderboard pagination (pages 2 and 3) now displays the correct players. * YAML stats are now saved to disk immediately (no more data loss on crash). * Fixed server lag caused by the playtime saver. * Fixed server lag when a player joins. * Fixed server lag when showing stats with MySQL/SQLite. * Anti-kill-abuse protection can no longer be bypassed by leaving the server. * PlaceholderAPI now works correctly for names with an underscore (e.g., `John_Doe`). * Fixed server lag when resetting all stats (YAML). * Database reconnection is now immediate (no more 6-second wait). * Database no longer tries to reconnect multiple times at once. ## Added * Added support for version 26.3.
release

NDPlayerStats 1.5.1

1.5.1
18 июл. 2026 г.599Minecraft: 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
### New Features - **/ndps lookup <player>** - Now works on offline players (can be disabled in config.yml) - **Better configuration organization** - All command formatting moved from messages.yml to config.yml ### Changes - `/stats` command formatting moved from messages.yml to config.yml - `/leaderboard` split into separate sections for kills and kd in config - `/ndps lookup` formatting added to config.yml (fully customizable) - Offline player lookup for `/ndps lookup` is configurable in config.yml <details> <summary>config.yml</summary> ``` # NDPlayerStats Configuration v1.5.1 # Author: Kubass1 - https://kubass.cz/ # ⚠ IMPORTANT: Changing database type requires server restart! # Edit this file, save it, then restart the server. # ============================================================ # DATABASE SETTINGS # ============================================================ database: # Database type: YAML, MYSQL, or SQLITE # ⚠ WARNING: Changing this requires server restart! type: YAML # SQLite settings (only used when type: SQLITE) sqlite: # Name of the SQLite database file filename: database.db # MySQL settings (only used when type: MYSQL) mysql: # MySQL server address host: localhost # MySQL server port port: 3306 # Name of the database to use database: mc_server # Database username username: root # Database password password: '' # Prefix for all table names (useful for multiple plugins sharing one database) table-prefix: ndps_ # Enable SSL for MySQL connection ssl: false # ============================================================ # UPDATE CHECKER # ============================================================ # Enable or disable automatic update checking check-update: true # ============================================================ # LEADERBOARD SETTINGS # ============================================================ leaderboard: # Enable or disable the leaderboard feature enabled: true # How many players to show in the leaderboard size: 10 # How often to auto-update leaderboard cache in seconds (0 = disabled) update-interval: 60 # Maximum position for placeholders (e.g. %ndplayerstats_kills_100%) max-position: 100 # Default mode for /leaderboard: "kills" or "kd" default-mode: kills # Custom colors for each rank position colors: '1': '&6' # #1 - Gold '2': '&7' # #2 - Silver '3': '&8' # #3 - Bronze '4': '&e' # #4 - Yellow '5': '&e' # #5 - Yellow '6': '&e' # #6 - Yellow '7': '&e' # #7 - Yellow '8': '&e' # #8 - Yellow '9': '&e' # #9 - Yellow '10': '&e' # #10 - Yellow others: '&f' # All other ranks - White # ============================================================ # RANK SETTINGS # ============================================================ ranks: # Enable or disable the ranking system completely enabled: true # Show [Unranked] for players with no stats show-unranked: true # Text to display for unranked players unranked-text: Unranked # Color for unranked text unranked-color: '&7' # Maximum rank number to display (ranks above this will show as 999+) max-display-rank: 999 # Show [999+] for ranks above max-display-rank show-max-plus: true # Text for ranks above max-display-rank max-plus-text: 999+ # Color for max-plus text max-plus-color: '&8' # Minimum kills required to get a rank minimum-kills: 0 # ============================================================ # ADMIN COMMAND SETTINGS # ============================================================ admin-command: # Allow /ndps lookup to work for offline players lookup-offline-players: true # ============================================================ # STATS COMMAND (/stats) # ============================================================ # All placeholders available for /stats command: # {player} - Player name # {kills} - Total kills # {deaths} - Total deaths # {pvp_kills} - PvP kills # {pve_kills} - PvE kills # {pvp_deaths} - PvP deaths # {pve_deaths} - PvE deaths # {kd} - K/D Ratio (formatted with 2 decimals) # {pvp_kd} - PvP K/D Ratio # {pve_kd} - PvE K/D Ratio # {killstreak} - Current killstreak # {rank} - Player rank (e.g., #5 or "Unranked") # {playtime} - Formatted play time (e.g., "2d 5h 30m") stats-command: 1: "&6&l{player}'s Statistics" 2: "&7══════════════════════════" 3: "&7Kills: &e{kills}" 4: "&7Deaths: &e{deaths}" 5: "&7K/D Ratio: &e{kd}" 6: "&7Killstreak: &e{killstreak}" 7: "&7Rank: &e{rank}" 8: "&7Play Time: &e{playtime}" 9: "&7══════════════════════════" # Text for players without a rank stats-unranked: "Unranked (no stats)" # ============================================================ # LEADERBOARD COMMAND (/leaderboard) # ============================================================ # All placeholders available for leaderboard: # {size} - Number of players per page # {page} - Current page number # {total} - Total number of pages # {total_players} - Total number of players with stats # {rank} - Player rank position # {color} - Color based on rank position (from config) # {player} - Player name # {kills} - Number of kills # {kd} - K/D Ratio (formatted with 2 decimals) # {mode} - Current mode (kills or kd) leaderboard-kills-command: 1: "&8&m &r &6&lTop {size} Players (Kills) - Page {page}/{total} &r &8&m " 2: "&7{rank}. {color}{player} &8- &a{kills} kills" 3: "&7Showing page {page} of {total} (Total: {total_players} players)" 4: "&7Use /leaderboard kills <page> for more" leaderboard-kd-command: 1: "&8&m &r &6&lTop {size} Players (K/D) - Page {page}/{total} &r &8&m " 2: "&7{rank}. {color}{player} &8- &a{kd} K/D" 3: "&7Showing page {page} of {total} (Total: {total_players} players)" 4: "&7Use /leaderboard kd <page> for more" # Leaderboard status messages leaderboard-disabled: "{prefix}&cThe leaderboard is currently disabled!" leaderboard-no-players: "&7No players with statistics yet!" # ============================================================ # ADMIN LOOKUP COMMAND (/ndps lookup) # ============================================================ # All placeholders available for /ndps lookup: # {player} - Player name # {uuid} - Player's UUID # {kills} - Total kills # {deaths} - Total deaths # {pvp_kills} - PvP kills # {pve_kills} - PvE kills # {pvp_deaths} - PvP deaths # {pve_deaths} - PvE deaths # {kd} - K/D Ratio (formatted with 2 decimals) # {pvp_kd} - PvP K/D Ratio # {pve_kd} - PvE K/D Ratio # {killstreak} - Current killstreak # {highest_killstreak} - Highest killstreak # {playtime} - Formatted play time # {rank} - Player rank (e.g., #5 or "Unranked") admin-lookup-command: 1: "&6=== {player}'s Stats ===" 2: "&eUUID: &f{uuid}" 3: "&eKills: &f{kills}" 4: "&eDeaths: &f{deaths}" 5: "&eK/D: &f{kd}" 6: "&eKillstreak: &f{killstreak}" 7: "&eHighest Killstreak: &f{highest_killstreak}" 8: "&ePlay Time: &f{playtime}" 9: "&eRank: &f{rank}" 10: "&7══════════════════════════" # ============================================================ # STATISTICS TRACKING # ============================================================ stats: # Track total play time for each player track-play-time: true # Track PvP kills separately (kills against players) track-pvp-kills: true # Track PvE kills separately (kills against mobs/animals) track-pve-kills: true # Track the highest killstreak a player has achieved track-highest-killstreak: true # Death tracking settings death-tracking: # Enable or disable death tracking completely enabled: true # What types of deaths to count count-pvp-deaths: true # Killed by another player count-pve-deaths: true # Killed by mobs/animals count-environmental-deaths: true # Fall damage, fire, lava, etc. count-void-deaths: true # Falling into the void count-suicide-deaths: true # Self-inflicted deaths (e.g. /kill) # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # Minimum playtime required before deaths start counting minimum-playtime-minutes: 0 # ============================================================ # ANTI-KILL ABUSE SETTINGS (TIME-WINDOW MODE) # ============================================================ anti-kill-abuse: # Enable or disable anti-kill abuse protection enabled: true # Maximum kills allowed within the time window against the same player # Example: 2 means if 2 kills happen within time-window-seconds, cooldown activates max-kills-per-victim: 2 # Time window in seconds to check for kills # Example: 30 means if 2 kills happen within 30 seconds, cooldown activates time-window-seconds: 30 # How long the cooldown lasts in seconds after abuse is detected # Example: 60 means after abuse detected, player cannot kill victim for 60 seconds cooldown-seconds: 60 # Should death be counted when a kill is blocked? # true = victim gets death, false = victim does NOT get death count-death-on-abuse: true # Should the killer receive a message when a kill is blocked? notify-killer: true # Should the victim receive a message when a kill is blocked? notify-victim: true # Players with this permission will bypass the check bypass-permission: "ndplayerstats.antiabuse.bypass" # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # ============================================================ # GUI SETTINGS # ============================================================ gui: # Title of the statistics GUI title: '&9{player}''s Statistics' # GUI size (must be multiple of 9, between 9 and 54) size: 27 # Items displayed in the GUI items: # Kills item kills: material: DIAMOND_SWORD slot: 11 name: '&aKills' lore: - '&7Total kills: &f{kills}' - '&7PvP kills: &f{pvp_kills}' - '&7PvE kills: &f{pve_kills}' - '&7Rank: &f{rank}' # Deaths item deaths: material: SKELETON_SKULL slot: 13 name: '&6Deaths' lore: - '&7Total deaths: &f{deaths}' - '&7PvP deaths: &f{pvp_deaths}' - '&7PvE deaths: &f{pve_deaths}' - '&7K/D Ratio: &f{kd}' # Killstreak item killstreak: material: TOTEM_OF_UNDYING slot: 15 name: '&2Killstreak' lore: - '&7Current: &f{killstreak}' - '&7Highest: &f{highest_killstreak}' # Player info item (head) info: material: PLAYER_HEAD slot: 4 name: '&e{player}' lore: - '&7Click to refresh' - '' - '&7Play Time: &f{playtime}' # ============================================================ # PLACEHOLDERAPI SETTINGS # ============================================================ placeholderapi: # Enable or disable PlaceholderAPI support enabled: true # Notify OPs when PlaceholderAPI is enabled/disabled notify-ops: true # ============================================================ # PERFORMANCE SETTINGS # ============================================================ performance: # Cache statistics for better performance cache-stats: true # How long to keep cached data in seconds cache-ttl: 300 # How often to auto-save statistics to disk in seconds save-interval: 300 # Use asynchronous operations to avoid lag async-operations: true # ============================================================ # NOTES # ============================================================ # 🔴 SERVER RESTART REQUIRED FOR: # - Changing database type (YAML/MySQL/SQLite) # - Changing database connection settings # # ✅ Can be reloaded with /ndps reload: # - All other settings including death tracking, ranks, # leaderboard, GUI, performance, anti-kill-abuse # - All text messages in messages.yml ``` </details> <details> <summary>messages.yml</summary> ``` # ============================================================ # NDPlayerStats Messages # All messages can be customized. Use & for color codes. # Placeholders: {prefix}, {player}, {count}, etc. # ============================================================ # ============================================================ # PREFIX # ============================================================ # This prefix is used in all messages that contain {prefix} prefix: "&8[&6NDStats&8] &r" # ============================================================ # COMMAND MESSAGES # ============================================================ # Message shown when a player doesn't have permission no-permission: "{prefix}&cYou don't have permission to use this command!" # Message shown when a command is used by console but requires a player player-only: "{prefix}&cThis command can only be used by players!" # Message shown when a player is not found player-not-found: "{prefix}&cPlayer &e{player} &cnot found!" # Message shown when a command is used incorrectly usage: "{prefix}&cUsage: &7{usage}" # ============================================================ # STATS RESET MESSAGES # ============================================================ # Message when a player's stats are reset stats-reset: "{prefix}&aStatistics for &e{player} &ahave been reset!" # Notification sent to the player when their stats are reset stats-reset-notify: "&cYour statistics have been reset by an administrator." # Broadcast message when all stats are reset stats-all-reset: "&cAll player statistics have been reset by an administrator." # Success message when all stats are reset stats-all-reset-success: "&aSuccessfully reset statistics for &e{count} &aplayers!" # Error message when resetting all stats fails stats-all-reset-error: "&cFailed to reset all statistics: {error}" # Warning message before resetting all stats stats-all-reset-warning: "&c&lWARNING: This will reset ALL player statistics!" # Second warning line stats-all-reset-warning2: "&cThis action cannot be undone!" # Confirmation prompt for resetting all stats stats-all-reset-confirm: "&eType &6/resetstatsall confirm &eto reset all stats" # Message when resetting all stats using SQL stats-all-reset-sql: "&eResetting all statistics using SQL..." # ============================================================ # GUI MESSAGES (/statsgui) # ============================================================ gui: # Message when opening GUI for another player opening: "{prefix}&aOpening statistics for &e{player}..." # Message when refreshing the GUI refreshed: "&aStatistics refreshed!" # Message when a player is offline player-offline: "&cPlayer {player} is not online. Use /stats instead." # ============================================================ # ANTI-KILL ABUSE MESSAGES # ============================================================ anti-kill-abuse: # Message shown to killer when kill is blocked # {victim} = name of the victim killer-message: "{prefix}&cYou have killed {victim} too many times! Kill not counted." # Message shown to victim when kill is blocked # {killer} = name of the killer # {death} = "counted" or "not counted" (based on count-death-on-abuse config) victim-message-death-counted: "{prefix}&aKill blocked! You were killed too many times by {killer}. Death counted." victim-message-death-not-counted: "{prefix}&aKill and death blocked! You were killed too many times by {killer}." # ============================================================ # ADMIN COMMAND MESSAGES (/ndps) # ============================================================ admin: # Success message after reload reloaded: "{prefix}&aConfiguration reloaded!" # Error message during reload reload-error: "&cError during reload: {error}" # Help menu help-header: "&6=== NDPlayerStats Admin ===" help-reload: "&e/ndps reload &7- Reload config" help-lookup: "&e/ndps lookup <player> &7- Lookup player stats" help-info: "&e/ndps info &7- Show plugin info" help-help: "&e/ndps help &7- Show this help" help-update: "&e/ndps update &7- Check for updates" help-note: "&cNote: Database type changes require server restart!" update-checking: "&eChecking for updates..." update-failed: "&cFailed to check for updates. Check console for details." # Info command info-header: "&6=== NDPlayerStats Info ===" info-version: "&eVersion: &f{version}" info-author: "&eAuthor: &f{author}" info-database: "&eDatabase: &f{database}" info-ranks: "&eRanks: &f{ranks}" info-papi: "&ePlaceholderAPI: &f{papi}" # Unknown command unknown-command: "&cUnknown command. Use /ndps help" # Database change warnings db-change-warning: "&cDatabase type changed from {old} to {new}!" db-change-restart: "&cDatabase type changes require server restart!" db-change-using: "&eUsing {current} until server restart." # ============================================================ # PLACEHOLDERAPI MESSAGES # ============================================================ # Message when PlaceholderAPI support is enabled papi-enabled: "&a[NDStats] PlaceholderAPI support enabled!" # Example placeholder usage papi-example: "&7Use %ndplayerstats_kills%, %ndplayerstats_pvp_kills%, %ndplayerstats_pve_kills%" # ============================================================ # DATABASE CONNECTION ERROR MESSAGES # ============================================================ # Message when database connection fails db-failed: "&c[NDStats] Failed to connect to database!" # Message to check console for details db-check-console: "&cCheck console for details." # Message showing the configured database type db-config-type: "&eConfig database type: {type}" ``` </details>
release

NDPlayerStats 1.5.0

1.5.0
17 июл. 2026 г.43Minecraft: 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
# Changelog – NDPlayerStats v1.5.0 --- ## New Features - **PvE Statistics** – kills and deaths from mobs/animals are now tracked separately - New stats: `pve_kills`, `pve_deaths` - New placeholders: `%ndplayerstats_pve_kills%`, `%ndplayerstats_pve_deaths%`, `%ndplayerstats_all_kills%`, `%ndplayerstats_all_deaths%` - `%ndplayerstats_kills%` now shows **only PvP kills** - `%ndplayerstats_all_kills%` shows total kills (PvP + PvE) - **Anti-Kill Abuse Protection** (Suggested by [finn12](https://www.spigotmc.org/members/finn12.1365346/)) – prevents kill farming against the same player - Time-window mode with configurable limits - Notifications for killer and victim - Bypass permission: `ndplayerstats.antiabuse.bypass` - World restrictions support - **Leaderboard Titles** – moved to `messages.yml` with `{page}`, `{total}`, `{size}` placeholders --- ## Bug Fixes - General bug fixes and performance improvements --- ## Configuration & Messages - **`config.yml`** – new section `anti-kill-abuse` added, `track-pve-kills` option added - **`messages.yml`** – new section `anti-kill-abuse` added, new `leaderboard.title` and `leaderboard.title-kd` with `{page}`, `{total}`, `{size}` placeholders --- ## Updating from v1.4.1 > **Important:** Updating from version 1.4.1 requires either: > - **Deleting** old `config.yml` and `messages.yml` (plugin will generate new ones with defaults) > > **or** > > - **Manually updating** both files with new sections --- ## Breaking Change `%ndplayerstats_kills%` now shows **PvP kills only**. Use `%ndplayerstats_all_kills%` for total kills. --- <details> <summary>config.yml</summary> ``` # NDPlayerStats Configuration v1.5.0 # Author: Kubass1 - https://kubass.cz/ # ⚠ IMPORTANT: Changing database type requires server restart! # Edit this file, save it, then restart the server. # ============================================================ # DATABASE SETTINGS # ============================================================ database: # Database type: YAML, MYSQL, or SQLITE # ⚠ WARNING: Changing this requires server restart! type: YAML # SQLite settings (only used when type: SQLITE) sqlite: # Name of the SQLite database file filename: database.db # MySQL settings (only used when type: MYSQL) mysql: # MySQL server address host: localhost # MySQL server port port: 3306 # Name of the database to use database: mc_server # Database username username: root # Database password password: '' # Prefix for all table names (useful for multiple plugins sharing one database) table-prefix: ndps_ # Enable SSL for MySQL connection ssl: false # ============================================================ # UPDATE CHECKER # ============================================================ # Enable or disable automatic update checking check-update: true # ============================================================ # LEADERBOARD SETTINGS # ============================================================ leaderboard: # Enable or disable the leaderboard feature enabled: true # How many players to show in the leaderboard size: 10 # How often to auto-update leaderboard cache in seconds (0 = disabled) update-interval: 60 # Maximum position for placeholders (e.g. %ndplayerstats_kills_100%) max-position: 100 # Default mode for /leaderboard: "kills" or "kd" default-mode: kills # Custom colors for each rank position colors: '1': '&6' # #1 - Gold '2': '&7' # #2 - Silver '3': '&8' # #3 - Bronze '4': '&e' # #4 - Yellow '5': '&e' # #5 - Yellow '6': '&e' # #6 - Yellow '7': '&e' # #7 - Yellow '8': '&e' # #8 - Yellow '9': '&e' # #9 - Yellow '10': '&e' # #10 - Yellow others: '&f' # All other ranks - White # ============================================================ # RANK SETTINGS # ============================================================ ranks: # Enable or disable the ranking system completely enabled: true # Show [Unranked] for players with no stats show-unranked: true # Text to display for unranked players unranked-text: Unranked # Color for unranked text unranked-color: '&7' # Maximum rank number to display (ranks above this will show as 999+) max-display-rank: 999 # Show [999+] for ranks above max-display-rank show-max-plus: true # Text for ranks above max-display-rank max-plus-text: 999+ # Color for max-plus text max-plus-color: '&8' # Minimum kills required to get a rank minimum-kills: 0 # ============================================================ # STATISTICS TRACKING # ============================================================ stats: # Track total play time for each player track-play-time: true # Track PvP kills separately (kills against players) track-pvp-kills: true # Track PvE kills separately (kills against mobs/animals) track-pve-kills: true # Track the highest killstreak a player has achieved track-highest-killstreak: true # Death tracking settings death-tracking: # Enable or disable death tracking completely enabled: true # What types of deaths to count count-pvp-deaths: true # Killed by another player count-pve-deaths: true # Killed by mobs/animals count-environmental-deaths: true # Fall damage, fire, lava, etc. count-void-deaths: true # Falling into the void count-suicide-deaths: true # Self-inflicted deaths (e.g. /kill) # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # Minimum playtime required before deaths start counting minimum-playtime-minutes: 0 # ============================================================ # ANTI-KILL ABUSE SETTINGS (TIME-WINDOW MODE) # ============================================================ anti-kill-abuse: # Enable or disable anti-kill abuse protection enabled: true # Maximum kills allowed within the time window against the same player # Example: 2 means if 2 kills happen within time-window-seconds, cooldown activates max-kills-per-victim: 2 # Time window in seconds to check for kills # Example: 30 means if 2 kills happen within 30 seconds, cooldown activates time-window-seconds: 30 # How long the cooldown lasts in seconds after abuse is detected # Example: 60 means after abuse detected, player cannot kill victim for 60 seconds cooldown-seconds: 60 # Should death be counted when a kill is blocked? # true = victim gets death, false = victim does NOT get death count-death-on-abuse: true # Should the killer receive a message when a kill is blocked? notify-killer: true # Should the victim receive a message when a kill is blocked? notify-victim: true # Players with this permission will bypass the check bypass-permission: "ndplayerstats.antiabuse.bypass" # World restrictions (empty list = all worlds) enabled-worlds: [] excluded-worlds: [] # ============================================================ # GUI SETTINGS # ============================================================ gui: # Title of the statistics GUI title: '&9{player}''s Statistics' # GUI size (must be multiple of 9, between 9 and 54) size: 27 # Items displayed in the GUI items: # Kills item kills: material: DIAMOND_SWORD slot: 11 name: '&aKills' lore: - '&7Total kills: &f{kills}' - '&7PvP kills: &f{pvp_kills}' - '&7PvE kills: &f{pve_kills}' - '&7Rank: &f{rank}' # Deaths item deaths: material: SKELETON_SKULL slot: 13 name: '&6Deaths' lore: - '&7Total deaths: &f{deaths}' - '&7PvP deaths: &f{pvp_deaths}' - '&7PvE deaths: &f{pve_deaths}' - '&7K/D Ratio: &f{kd}' # Killstreak item killstreak: material: TOTEM_OF_UNDYING slot: 15 name: '&2Killstreak' lore: - '&7Current: &f{killstreak}' - '&7Highest: &f{highest_killstreak}' # Player info item (head) info: material: PLAYER_HEAD slot: 4 name: '&e{player}' lore: - '&7Click to refresh' - '' - '&7Play Time: &f{playtime}' # ============================================================ # PLACEHOLDERAPI SETTINGS # ============================================================ placeholderapi: # Enable or disable PlaceholderAPI support enabled: true # Notify OPs when PlaceholderAPI is enabled/disabled notify-ops: true # ============================================================ # PERFORMANCE SETTINGS # ============================================================ performance: # Cache statistics for better performance cache-stats: true # How long to keep cached data in seconds cache-ttl: 300 # How often to auto-save statistics to disk in seconds save-interval: 300 # Use asynchronous operations to avoid lag async-operations: true # ============================================================ # NOTES # ============================================================ # 🔴 SERVER RESTART REQUIRED FOR: # - Changing database type (YAML/MySQL/SQLite) # - Changing database connection settings # # ✅ Can be reloaded with /ndps reload: # - All other settings including death tracking, ranks, # leaderboard, GUI, performance, anti-kill-abuse # - All text messages in messages.yml ``` </details> <details> <summary>messages.yml</summary> ``` # ============================================================ # NDPlayerStats Messages # All messages can be customized. Use & for color codes. # Placeholders: {prefix}, {player}, {count}, etc. # ============================================================ # ============================================================ # PREFIX # ============================================================ # This prefix is used in all messages that contain {prefix} prefix: '&8[&6NDStats&8] &r' # ============================================================ # COMMAND MESSAGES # ============================================================ # Message shown when a player doesn't have permission no-permission: '{prefix}&cYou don''t have permission to use this command!' # Message shown when a command is used by console but requires a player player-only: '{prefix}&cThis command can only be used by players!' # Message shown when a player is not found player-not-found: '{prefix}&cPlayer &e{player} &cnot found!' # Message shown when a command is used incorrectly usage: '{prefix}&cUsage: &7{usage}' # ============================================================ # STATS MESSAGES # ============================================================ # Message when a player's stats are reset stats-reset: '{prefix}&aStatistics for &e{player} &ahave been reset!' # Notification sent to the player when their stats are reset stats-reset-notify: '&cYour statistics have been reset by an administrator.' # Broadcast message when all stats are reset stats-all-reset: '&cAll player statistics have been reset by an administrator.' # Success message when all stats are reset stats-all-reset-success: '&aSuccessfully reset statistics for &e{count} &aplayers!' # Error message when resetting all stats fails stats-all-reset-error: '&cFailed to reset all statistics: {error}' # Warning message before resetting all stats stats-all-reset-warning: '&c&lWARNING: This will reset ALL player statistics!' # Second warning line stats-all-reset-warning2: '&cThis action cannot be undone!' # Confirmation prompt for resetting all stats stats-all-reset-confirm: '&eType &6/resetstatsall confirm &eto reset all stats' # Message when resetting all stats using SQL stats-all-reset-sql: '&eResetting all statistics using SQL...' # ============================================================ # STATS COMMAND (/stats) # ============================================================ # Title when viewing your own stats stats-your-title: '&6&lYour Statistics' # Title when viewing another player's stats stats-other-title: '&6&l{player}''s Statistics' # Separator line stats-separator: '&7══════════════════════════' # Individual stat lines stats-kills: '&7Kills: &e{kills}' stats-deaths: '&7Deaths: &e{deaths}' stats-kd: '&7K/D Ratio: &e{kd}' stats-killstreak: '&7Killstreak: &e{killstreak}' stats-rank: '&7Rank: &e{rank}' stats-playtime: '&7Play Time: &e{playtime}' # Text for players without a rank stats-unranked: Unranked (no stats) # ============================================================ # LEADERBOARD MESSAGES (/leaderboard) # ============================================================ leaderboard: # Title of the leaderboard (Kills) title: '&8&m &r &6&lTop {size} Players (Kills) - Page {page}/{total} &r &8&m ' # Title of the leaderboard (K/D) title-kd: '&8&m &r &6&lTop {size} Players (K/D) - Page {page}/{total} &r &8&m ' # Format for each leaderboard entry line-format: '&7{rank}. {color}{player} &8- &a{kills} kills' # Message when leaderboard is disabled disabled: '{prefix}&cThe leaderboard is currently disabled!' # Message when no players have stats no-players: '&7No players with statistics yet!' # Message showing how many players are displayed showing-top: '&7Showing top {limit} of {total} players' # Hint for pagination page-hint: '&7Use /leaderboard <page> for more' # ============================================================ # GUI MESSAGES (/statsgui) # ============================================================ gui: # Message when opening GUI for another player opening: '{prefix}&aOpening statistics for &e{player}...' # Message when refreshing the GUI refreshed: '&aStatistics refreshed!' # Message when a player is offline player-offline: '&cPlayer {player} is not online. Use /stats instead.' # ============================================================ # ANTI-KILL ABUSE MESSAGES # ============================================================ anti-kill-abuse: # Message shown to killer when kill is blocked # {victim} = name of the victim killer-message: '{prefix}&cYou have killed {victim} too many times! Kill not counted.' # Message shown to victim when kill is blocked # {killer} = name of the killer # {death} = "counted" or "not counted" (based on count-death-on-abuse config) victim-message-death-counted: '{prefix}&aKill blocked! You were killed too many times by {killer}. Death counted.' victim-message-death-not-counted: '{prefix}&aKill and death blocked! You were killed too many times by {killer}.' # ============================================================ # ADMIN COMMAND MESSAGES (/ndps) # ============================================================ admin: # Success message after reload reloaded: '{prefix}&aConfiguration reloaded!' # Error message during reload reload-error: '&cError during reload: {error}' # Help menu help-header: '&6=== NDPlayerStats Admin ===' help-reload: '&e/ndps reload &7- Reload config' help-lookup: '&e/ndps lookup <player> &7- Lookup player stats' help-info: '&e/ndps info &7- Show plugin info' help-help: '&e/ndps help &7- Show this help' help-update: '&e/ndps update &7- Check for updates' help-note: '&cNote: Database type changes require server restart!' update-checking: '&eChecking for updates...' update-failed: '&cFailed to check for updates. Check console for details.' # Info command info-header: '&6=== NDPlayerStats Info ===' info-version: '&eVersion: &f{version}' info-author: '&eAuthor: &f{author}' info-database: '&eDatabase: &f{database}' info-ranks: '&eRanks: &f{ranks}' info-papi: '&ePlaceholderAPI: &f{papi}' # Lookup command lookup-header: '&6=== {player}''s Stats ===' lookup-uuid: '&eUUID: &f{uuid}' lookup-kills: '&eKills: &f{kills}' lookup-deaths: '&eDeaths: &f{deaths}' lookup-kd: '&eK/D: &f{kd}' lookup-killstreak: '&eKillstreak: &f{killstreak}' lookup-playtime: '&ePlay Time: &f{playtime}' lookup-rank: '&eRank: &f{rank}' # Unknown command unknown-command: '&cUnknown command. Use /ndps help' # Database change warnings db-change-warning: '&cDatabase type changed from {old} to {new}!' db-change-restart: '&cDatabase type changes require server restart!' db-change-using: '&eUsing {current} until server restart.' # ============================================================ # PLACEHOLDERAPI MESSAGES # ============================================================ # Message when PlaceholderAPI support is enabled papi-enabled: '&a[NDStats] PlaceholderAPI support enabled!' # Example placeholder usage papi-example: '&7Use %ndplayerstats_kills%, %ndplayerstats_pvp_kills%, %ndplayerstats_pve_kills%' # ============================================================ # DATABASE CONNECTION ERROR MESSAGES # ============================================================ # Message when database connection fails db-failed: '&c[NDStats] Failed to connect to database!' # Message to check console for details db-check-console: '&cCheck console for details.' # Message showing the configured database type db-config-type: '&eConfig database type: {type}' ``` </details>
release

NDPlayerStats 1.4.1

1.4.1
6 июл. 2026 г.100Minecraft: 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
- Bug Fixes - Added version support 1.15+
release

NDPlayerStats 1.4.0

1.4.0
6 июл. 2026 г.31Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
## Changelog - NDPlayerStats v1.4.0 ### Added - Automatic update check (can be disabled with `check-update: false`) - `/ndps update` and `/ndps check` commands - OP/Admin notifications on join when new version is available - Leaderboard pagination - `/leaderboard <page>`, `/leaderboard kills <page>` and `/leaderboard kd <page>` - `default-mode` option in config.yml (`kills` or `kd`) ### Fixed - Minor bug fixes
release

NDPlayerStats 1.3.0

1.3.0
4 июл. 2026 г.34Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1.2, 26.2bukkit, paper, purpur, spigot
Скачать
Что нового
- Bug fixes - Added more config.yml customizations - Added more messages.yml customizations
beta

NDPlayerStats 1.2.0 - May not work under 1.21.X

1.2.0
21 дек. 2025 г.303Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать