BasicStats
2.6.1Minecraft statistics plugin for Paper, Purpur and Spigot with ore-based ranks, CraftAttack-style death counter, leaderboards, streaks, achievements, dashboard and Discord webhooks.
2.6.1latestBasicStats 2.6.1yesterday
- Reworked the in-game rank overview into a larger, multi-page Minecraft inventory layout. - Grouped rank stages by material, with separate slots for block, raw ore and ingot/scrap forms where available. - Added the current-rank highlight with points, progress percentage and next rank. - Added clearer rank progression, stage ranges and material legends directly in the GUI. - Added dedicated previous, next, rank-details, back and close controls for the new 54-slot overview. - Added matching English and German translations for the new rank overview elements. - KeptRank overview GUI redesign
/basicstats rank,/basicstats rank list, existing rank calculations, permissions and stored data compatible.
- No existing statistics, commands, dashboard features, APIs, configuration sections or data formats were removed.Release notes
2.6.0BasicStats 2.6.04 days ago
- Added bounded public player profiles to the BasicStats Explorer. Profiles can show the current ore rank, rank progress, deaths, player kills, mob kills, playtime, walked blocks, blocks broken and placed, crafting, damage, Totems Used, achievements, goals and streaks. - Added a detailed player-profile section to the Explorer with compact statistic cards and an expandable view for additional values. - Added consent-aware player heads using a restrictedExplorer player profiles
mc-heads.netavatar URL. Heads and real display names are only published after explicit player consent and only when the administrator enables the matching options. - Players without consent remain anonymous asPlayer 1,Player 2, and so on. UUIDs, IP addresses, coordinates, chat, inventories, tokens and private dashboard data are still excluded. - Addedexplorer-push.expose-player-profiles,expose-player-headsandplayer-limitwith additive defaults. Existing Explorer Push, claim codes, schedules and YAML data remain compatible. - AddedtotemsUsedto the bounded public aggregate and per-player snapshot values.
- Added a dedicated bilingual privacy page to the homepage with the consent flow, public/private data explanation, administrator controls and Discord support link. - Added a homepage privacy link and updated the Explorer documentation to describe anonymous profiles, explicit consent and optional heads clearly.Privacy documentation
- Updated homepage copy, dashboard demo labels, Explorer documentation, README and Modrinth description for the new public-profile experience. - Kept the existing rank rework visible across the plugin, dashboard and Explorer: ore ranks, progress, next rank, score and player leaderboard data remain available. - No existing commands, permissions, statistics, dashboard functions, APIs, rank behavior, configuration sections or stored data formats were removed.Reach and release consistency
2.5.1BasicStats 2.5.16 days ago
- Added milestone-gate information to the inventory rank view, including the current cap and the number of different factors required to pass it. - Added the active-factor count and milestone-gate status to the live Dashboard rank page and player detail pages. - Kept the new rank breakdown compatible with older dashboard payloads; missing optional fields are simply omitted from the compact display. - Updated the public homepage rank showcase to list all 13 defaultComplete rank visibility
balanced-v2factors, including completed goals, completed achievements and best streak. - Corrected the documented ladder size to 27 material stages across the homepage and Modrinth description. - No commands, rank settings, APIs, dashboard functions, stored statistics or data formats were removed.2.5.0BasicStats 2.5.0last week
- Added a more demanding multi-factor rank calculation that rewards broad activity instead of allowing one farmed statistic to dominate progression. - Added rank factors for completed goals, completed achievements and best streaks. - Added a capped diversity bonus based on the number of factors that reach the configured progress threshold. - Added configurable milestone gates that require activity in multiple factors before larger rank sections can be crossed. - Kept the existing death penalty, cooldown and rank-loss behavior intact; deaths still remove the configured number of points by default. - AddedRank Rework – balanced-v2
ranks.algorithm: legacyas a compatibility fallback for servers that want the pre-2.5.0 calculation. - Added safe validation and default migration for the newranks.diversityandranks.milestone-gatessettings.
-Clearer rank explanations
/basicstats rankand/basicstats rank detailsnow show the rank model, base score, factor coverage, diversity bonus, active factors and any milestone cap. - Added new rank breakdown values to the inventory rank view, Dashboard rank data and player detail pages. - Added PlaceholderAPI values:%basicstats_rank_raw_score%,%basicstats_rank_factor_coverage%,%basicstats_rank_diversity_bonus%,%basicstats_rank_gate_cap%and%basicstats_rank_factors_reached%. - Added localized labels for the new goal, achievement and streak factors in English and German.
- ExistingCompatibility
data.ymlfiles, player statistics, death penalties, commands, APIs, dashboard routes and previous rank configuration keys remain compatible. - No existing Minecraft statistics or persisted player data are removed or rewritten by the rank rework.2.4.5BasicStats 2.4.5last week
- Fixed login streak qualification:Reliability, privacy & compatibility fixes
streaks.mode: loginnow checks the configured minimum playtime as it accumulates, so a login streak is no longer stuck whenminimum-playtime-minutesis greater than zero. - Fixed complete statistic resets:/basicstats reset <player> all confirmnow removes persisted achievements as well as counters, deaths, periods, rank penalties, streaks and imported-stat markers. Settings and first-join metadata remain intact. - Fixed Explorer first-upload races: concurrent first uploads now use an idempotent insert, so only one pending server record is created and the other request continues safely. - Hardened Explorer request parsing: chunked requests are streamed and cancelled as soon as the 40 KB request limit is exceeded instead of being fully buffered first. - Fixed Explorer claim errors: genuine address conflicts remain409, while D1/storage failures now return a non-sensitive503instead of being misreported as an already-claimed server. - Hardened Explorer identity validation: the plugin and Pages Functions now use the same UUID format rules, and upload counters reject malformed or oversized numeric values safely. - Aligned Explorer status freshness: the website now uses snapshot age rather than the current player count, so an empty but healthy server is not shown as offline. Frontend address validation now matches backend support for ports, IPv4 and public IPv6 addresses. - Fixed goal event delivery: goal additions and completions now reach the dashboard event feed and Discord notification path even when the optional dashboard HTTP server is disabled, without duplicate polling events when it is enabled. - Fixed network rank inflation: network leaderboards use the highest synchronized per-server rank score instead of summing already-normalized scores across backends. - Hardened PlaceholderAPI access: asynchronous placeholder requests no longer call Bukkit player/server APIs; they use a safe cached result or return an empty value until a main-thread snapshot exists. - Protected foreign scoreboards: BasicStats no longer changes or unregisters an existingbasicstats_deathsobjective owned by another plugin. - Improved database transport defaults: fresh configurations enable MariaDB TLS by default and warn when an explicitly remote database is configured without encryption.
- Updated the plugin, Maven project, dashboard shell, homepage, Explorer documentation and README to 2.4.5. - Updated the dashboard help text to useRelease consistency
/basicstats dashboard tokeninstead of referring to a token printed in the console. - No commands, permissions, APIs, dashboard features, Explorer pairing behavior, configuration sections or YAML data formats were removed.2.4.4BasicStats 2.4.4last week
- Fixed shift-click crafting counts: multi-craft recipes now consume a shared in-memory ingredient budget for the complete event instead of reusing the original matrix on every loop. Items crafted are no longer inflated by the number of possible attempts. - Fixed achievement unlock edge cases: achievements unlock when the configured target is actually reached; rounded display percentages can no longer unlock an achievement too early. - Fixed maximum rank progression: the final rank can now reach its real maximum score and displays 100% progress instead of stopping one point short. - Fixed `/basicstats reload`: rank monitoring, streak tracking, achievement checks and goal notifications now stop and restart with the new configuration, so changed intervals and enable/disable settings apply immediately. - Fixed death-counter scoreboard interference: BasicStats no longer replaces scoreboards owned by other plugins. The death counter is added to BasicStats sidebars without taking ownership of unrelated player scoreboards. - Hardened the local dashboard: request workers are bounded, concurrent requests are capped, oversized settings bodies return a clearReliability, security & compatibility bugfixes
413, response security headers are sent, and malformed JSON is rejected instead of being partially interpreted. - Protected dashboard credentials: temporary admin tokens are no longer written to the server log or appended to browser URLs. The clickable dashboard link and the short-lived token are delivered separately. - Protected hosted HTTP access: remote dashboard URLs must use HTTPS by default. Plain HTTP requires the explicitdashboard.allow-insecure-remote: trueopt-in for trusted private networks. - Made Explorer quota handling safe: the plugin tracks accepted uploads per UTC day and spaces the configured 15-minute minimum to a quota-safe interval of about 55 minutes when necessary. Daily-limit responses no longer trigger retries, and no more than 26 uploads are intentionally scheduled per server and day. - Made Explorer quota updates atomic: the D1 update rechecks the daily ceiling inside the database update, preventing concurrent uploads from consuming the same final quota slot. - Improved Explorer address validation: public IPv6 addresses are normalized safely while loopback, private and link-local ranges remain rejected. - Hardened dashboard settings parsing: settings are parsed as a real JSON object with type validation; unknown fields are ignored and malformed structures are rejected cleanly. - Isolated bundled runtime libraries: Gson and the optional MariaDB driver are shaded/relocated, while MariaDB service loading remains available without a hard-coded unshaded driver class name. - Removed the duplicate Explorer D1 migration: the migration directory now contains one canonical0001_explorer_servers.sqlschema with the active upload quota columns. - Updated the README, Explorer documentation, homepage build metadata and compatibility notes for 2.4.4. - No existing commands, permissions, statistics, dashboard features, Explorer pairing, YAML keys or stored player data were removed. Existing configurations continue to receive additive defaults.2.4.3BasicStats 2.4.32 weeks ago
- Added persistent per-player Explorer name consent. Public names are never shown by default; players appear asPrivacy-first Explorer leaderboards
Player 1,Player 2, etc. until they explicitly choose otherwise. - Added a clickable first-join question with Yes and No actions. Unanswered prompts automatically become anonymous after the configured timeout and never block gameplay. - Added/basicstats explorer privacy,/basicstats explorer privacy yes|noand/basicstats explorer privacy resetfor players. - Added administrator inspection and reset commands with/basicstats explorer privacy <player>and/basicstats explorer privacy reset <player>. - Saved the explicitly consented display name privately indata.ymlso offline players keep the approved name without an OfflinePlayer fallback. - Addedprivacy.explorer-name-consent.enabled,ask-on-first-join,defaultandtimeout-secondsconfiguration. Implicit public consent is rejected and the default remains anonymous. - Explorer names are published only when bothexplorer-push.expose-player-names: trueand the individual player decision is Yes. - Advanced public boards remain opt-in; K/D uses player kills and deaths only and never mixes in mob kills. - Removed avatar/head data and player identity from the normalized public Explorer response. Public events are always coordinate-free and generic. - Aligned the free Explorer backend with the current limits: three-hour snapshot expiry and a maximum of 26 accepted uploads per server and UTC day. - Added a stable per-server upload offset of 0–300 seconds to distribute scheduled Explorer uploads. - Added privacy, sanitization, K/D and scheduling tests plus updated Explorer, README and Modrinth documentation. - No existing statistics, commands, permissions, dashboard features, APIs, YAML formats or data formats were removed.2.4.2BasicStats 2.4.22 weeks ago
- Explorer Push now publishes the latest public server snapshot every 15 minutes instead of once per hour. - Existing installations with the former untouched default ofExplorer Push every 15 minutes
3600seconds automatically migrate to900seconds; other custom intervals remain unchanged. - Increased the Explorer upload guard to a maximum of 96 uploads per server and UTC day. - Updated the Explorer configuration, documentation and tests for the new schedule.
- Added one-time access onboarding forEasier dashboard access setup
/basicstats dashboard. - Added safe same-PC setup with/basicstats dashboard setup local. - Added hoster setup with/basicstats dashboard setup hosted <server-address> <port>. - Hosted setup now accepts the normal server address and port, for exampleBasicStats.enderman.cloud 33416; BasicStats creates the HTTP browser URL automatically, sohttp://orhttps://is not required. - Dashboard links are no longer issued when the server would only generate an unusable127.0.0.1link for a remote host. - Hosted setup binds to the required external interface, stores the generated public URL and keeps the temporary admin-token flow unchanged. - Added clear English and German guidance, clickable commands, address validation and port validation. - Added dashboard access status to the authenticated General settings panel. - Updated the dashboard Help and Settings pages, README and Modrinth documentation. - Existing statistics, commands, APIs, dashboard features, YAML files, data formats and secrets remain compatible; no existing functionality was removed.2.4.1BasicStats 2.4.12 weeks ago
- Added an opt-in outbound HTTPS push mode for the BasicStats Explorer; the Minecraft server no longer needs to expose an HTTP/HTTPS port for Explorer lookups. - AddedHoster-friendly Explorer Push
/basicstats explorer claimand/basicstats explorer statuswith clickable one-time pairing links and safe upload diagnostics. - Added secure per-server IDs, 256-bit publish secrets, one-time claim codes, SHA-256 verification and constant-time comparisons. Secrets are never written to logs, public JSON, D1 plaintext or browser storage. - Added bounded public snapshots with privacy filtering: no UUIDs, IP addresses, coordinates, death locations, chat, dashboard tokens or internal file paths. - Added a Cloudflare Pages Functions + D1 backend that stores only the newest snapshot per claimed server. - Added strict 32 KB snapshot/request limits, hostname validation, generic error responses, same-origin responses, in-memory request throttling and a maximum of 26 accepted uploads per server and UTC day. - Added three-hour expiry handling with distinct404not linked and410stale snapshot responses. - Added the Explorer claim page and updated the search status surface with explicit checking, success, not-linked, stale-data and rate-limit states. Results never auto-scroll; the visitor chooses “Statistik ansehen”. - Kept the legacypublic-web-apiself-hosting feature available and unchanged as an optional compatibility path. No existing Minecraft statistics, commands, dashboard features, YAML formats or APIs were removed. - Added D1 migration, Wrangler configuration, Explorer documentation and the new hoster/Aternos/FreeMCServer setup guidance.2.3.4BasicStats 2.3.42 weeks ago
- AddedHosted-server dashboard access
dashboard.public-urlso/basicstats dashboardcan create a browser link that remote administrators can actually open. - Fixed wildcard bindings:0.0.0.0and::no longer produce a misleading localhost-only dashboard link when a public URL is configured. - Added validation for public dashboard URLs and clear diagnostics for missing or invalid remote-access settings. - Added remote-host setup guidance to the dashboard Help page and the authenticated Settings page. - Kept the secure defaults: the dashboard remains disabled by default and still binds to127.0.0.1unless an administrator explicitly changes the configuration. - Preserved all existing commands, permissions, APIs, dashboard features, configuration keys, YAML files and data formats. The newdashboard.public-urlsetting is additive.2.3.3BasicStats 2.3.32 weeks ago
- Added the admin-onlyHistorical vanilla statistics import
/basicstats import vanilla [player] [confirm]command. - BasicStats can now discover existing Minecraft statistics files and import historical values from before the plugin was installed. - Imports exact vanilla-backed values for blocks broken, items crafted, damage dealt and damage taken. - Deaths, player kills, mob kills, jumps, walking distance and playtime already come directly from Minecraft's vanilla statistics and therefore include their existing history automatically. - Existing BasicStats counters are never merged automatically: non-zero counters are protected to prevent duplicate or ambiguous totals. - Imports are previewed first, require an explicitconfirm, create a safety backup even when automatic backups are disabled and store a per-player import marker. - Added safe retry protection and cache invalidation so imported values appear immediately in displays, ranks, leaderboards, PlaceholderAPI and the dashboard. - Deathlog entries, block placements and exact historical event timestamps cannot be reconstructed from the vanilla API and are intentionally not fabricated. - Existing commands, permissions, configuration options, APIs, dashboard features, rank behavior, YAML files and data formats remain compatible. The additive import marker is removed again by a full statistics reset.2.3.2BasicStats 2.3.22 weeks ago
- Visible BasicStats output now follows the Bukkit display name by default, so NameMask, EssentialsX and compatible nickname plugins can integrate without duplicating a second identity system. - AddedNickname-aware player identity
names.use-display-nameto keep server-wide visible names configurable. - Added%basicstats_display_name%and%basicstats_username%PlaceholderAPI placeholders, plus the%basicstats_real_name%alias. - Stored statistics, UUIDs and command targets continue to use the real account identity; nickname changes do not create duplicate players or split data. - Tablist, placeholder, leaderboard and dashboard-facing displays refresh after common/nickand/nicknamecommands instead of waiting for the normal refresh interval.
- Dashboard player profiles show the configured nickname prominently. - The real Minecraft username is returned only to a valid temporary dashboard administrator token whenSafer dashboard identity handling
names.show-real-name-in-dashboardis enabled. - Read-only dashboard viewers do not receive the real username in player-detail responses.
-Cleaner help and maintenance
/basicstats helpnow hides setup, dashboard administration, reset, backup, reload and network commands from senders without the corresponding permission. - Existing commands, permissions, dashboard routes, configuration keys, APIs, YAML files and data formats remain compatible. - Updated the version metadata, documentation and dashboard build label to 2.3.2.2.3.1BasicStats 2.3.12 weeks ago
- Commands shown in BasicStats chat messages are now clickable. - Simple commands run immediately, while commands with arguments are inserted into the chat so players can review or complete them safely. - Dashboard links are now clickable and open directly in the browser. - Help, setup reminders, settings guidance, dashboard messages and achievement reward messages use the same interactive chat handling. - Kept the existing command text, permissions, translations, data format, dashboard behavior and server-thread safety unchanged.Interactive chat messages
- Reworked the Settings admin menu with a dedicated Discord category for the Default webhook plus Players, Ranks, Goals & Achievements, and Streaks & Records targets. - Added per-target webhook URLs, enable switches and event filters without exposing saved webhook secrets back to the browser. - Added a token-protected Send test notification action with asynchronous delivery. - Fixed Settings saves so the configuration is applied, the embedded dashboard reconnects automatically and the temporary admin session is retained during the plugin reload. - Kept the legacyDashboard admin and Discord routing follow-up
notifications.discord.webhook-urlandnotifications.discord.eventsconfiguration working, including existing YAML files and all previous commands, APIs and dashboard features.2.3.0BasicStats 2.3.02 weeks ago
- AddedGuided setup wizard
/basicstats setupfor server operators with thebasicstats.setuppermission. - New servers now remind authorized administrators in English when BasicStats has not been configured yet. - The wizard guides administrators through language, default display, core features and optional integrations. - Added a final review screen with Back, Next, Cancel and Save actions before any settings are applied. - Setup changes are saved through the existing config migration flow and the plugin reloads safely afterward. - Existing statistics, player data, messages, permissions, APIs, dashboard settings and data formats remain preserved. - The wizard can be reopened at any time to review or change server defaults.2.2.4BasicStats 2.2.42 weeks ago
- Released a small maintenance update without removing commands, configuration options, APIs, dashboard features, rank behavior or data formats. - Placeholder caches are now released when a player leaves, preventing repeated joins and quits from retaining stale per-player display data. - Temporary dashboard administrator tokens are invalidated whenever the dashboard stops or reloads, reducing the lifetime of old settings links. - Kept the existing atomic data storage, backup recovery, configuration migration and compatibility diagnostics unchanged and fully enabled. - Updated the Modrinth publishing helper and documentation for Windows PowerShell 5.1; PowerShell 7 is not required.Maintenance and reliability
2.2.3BasicStats 2.2.32 weeks ago 2.2.3
- AddedSupport Diagnostics
/basicstats debugfor safe, copyable server diagnostics. - Displays plugin version, Bukkit API, Minecraft version, Java runtime and online player count. - Shows storage health, data format, backup status and active modules. - Includes PlaceholderAPI and network connection status. - Added English and German translations. - Added thebasicstats.debugpermission.
- Added automatic health checks toConfiguration & Compatibility Health Check
/basicstats debug. - Detects invalid configuration values and unsupported options. - Checks Java version and file permissions. - Checks missing translations and storage problems. - Checks dashboard binding and runtime status. - Checks Discord webhook configuration without displaying the URL. - Checks network and MySQL prerequisites without exposing credentials. - Reports a clear status withOK, warnings and errors. - No tokens, passwords, webhook URLs or private player data are shown.2.2.2BasicStats 2.2.22 weeks ago 2.2.2
- Added personal notification settings for: - Rank changes - Goal completions - Achievements - Streaks - Personal records - AddedSmarter Notifications
/basicstats settings notifications- Added/basicstats settings notifications <type> <on|off|toggle>- Server-wide defaults can be configured inconfig.yml. - Players can customize their own notification preferences. - Goal notifications now work even when the dashboard is disabled. - Prevented duplicate goal-completion messages.
- Added duplicate-event protection. - Added per-player cooldowns. - Added webhook batching for multiple similar events. - Added configurable batch size and batch delay. - Added configurable deduplication and cooldown times. - Preserved asynchronous delivery, retries and Discord rate-limit handling. - Discord mentions remain disabled for improved security. - Discord webhooks remain disabled by default.Improved Discord Notifications
- Preserved all existing commands, APIs, dashboard features, rank systems and data formats. - Existing YAML configurations remain compatible. - Existing custom configuration and message values are not overwritten. - Updated plugin metadata, README, homepage and dashboard demo to versionCompatibility & Stability
2.2.2.2.2.1BasicStats 2.2.12 weeks ago 2.2.1
- Added configurable achievements for playtime, blocks, player kills, mob kills, rank stages, rank points, streaks and best streaks. - Added persistent one-time unlock tracking inAchievements and Milestones
data.yml. - Added optional player notifications. - Added MiniMessage reward text and console-command rewards. - Added reward placeholders:%player%,%uuid%,%achievement%and%target%. - Added/basicstats achievements [player]. - Added thebasicstats.achievementspermission. - Added achievement progress to PlaceholderAPI, player profiles and protected dashboard snapshots. - Added a dedicated dashboard Achievements page. - Added achievement unlocks to the dashboard event feed.
- Added theDiscord Notifications
achievement-unlockedwebhook event. - Addednew-recordnotifications for personal streak records. - Addedlong-streaknotifications for especially long new-best streaks. - Added configurablenotifications.discord.long-streak-threshold. - Default long-streak threshold is 7 days. - Kept asynchronous delivery, bounded retries, official Discord host validation and mention suppression. - Discord notifications remain disabled by default.
- Existing commands, configuration sections, APIs, dashboard endpoints, rank behavior and YAML data remain compatible. - No existing features were removed. - Updated plugin metadata, README, homepage and dashboard demo to versionCompatibility and Quality
2.2.1. - Improved dashboard navigation and achievement-related UI states.2.2.0BasicStats 2.2.02 weeks ago 2.2.0
- Added daily login, playtime and activity streaks. - Added configurable minimum daily playtime. - Added configurable activity requirements. - Added streak rewards with console commands. - AddedPlayer Streaks
%player%,%uuid%and%streak%reward placeholders. - Added/basicstats streak [player]. - Added current streak, best streak and streak progress placeholders.
- AddedTeams & Clans
/basicstats team [player]. - Added combined team statistics for: - Rank points - Playtime - Kills - Deaths - Blocks broken - Added support for Vanilla scoreboard teams. - Added a publicBasicStatsTeamProviderAPI for external team and clan plugins. - BasicStats does not create or manage a separate team system.
- Added optional Velocity/Bungee network support through shared MySQL/MariaDB storage. - Added UUID-based server-wide player aggregation. - Added shared network snapshots and leaderboards. - Added unique server IDs for backend servers. - Added asynchronous database synchronization. - AddedNetwork Mode
/basicstats networkfor connection diagnostics. - Local YAML storage remains the default fallback. - Network mode is disabled by default.
- Added newConfiguration & Dashboard
streaks,teamsandnetworkconfiguration sections. - Added dashboard switches for streak, team and network data. - Added streak and team information to dashboard player profiles. - Updated commands, permissions and PlaceholderAPI documentation. - Updated README, homepage and plugin metadata to version2.2.0.
- Existing commands, APIs, configuration values and data formats remain compatible. - No existing features were removed. - Bukkit API access remains on the server thread. - Network database operations run asynchronously.Compatibility
2.1.1BasicStats 2.1.13 weeks ago 2.1.1
- Added shared in-memory caching for statistics, ranks, displays, PlaceholderAPI and dashboard calculations. - Added cached counters for block breaks, block placement, crafting and damage. - Added cached player snapshots and deathlogs to reduce repeatedPerformance
data.ymlreads. - Improved leaderboard performance for servers with many players. - Online player statistics now remain live without creating unnecessary YAML writes. - Reduced repeated dashboard and rank calculations. - Dashboard history now skips duplicate samples when values have not changed.
-Storage & Reliability
data.ymlis now saved only when data has actually changed. - Batched counter updates are flushed during autosave, backups and shutdown. - Atomic temporary-file replacement remains enabled. - Backups now flush pending in-memory data before creating a copy. - Existing YAML structures, migrations and backup recovery remain compatible. - Corrupted data files are still preserved and restored from valid backups when available.
- No commands, permissions, APIs, dashboard features or rank systems were removed. - Existing data formats and configuration options remain supported. - All Bukkit and Paper API calls remain on the server thread. - Discord webhooks remain asynchronous and non-blocking. - Dashboard remains disabled by default.Compatibility
- Updated the project homepage to versionWebsite & Documentation
2.1.1. - Updated the interactive dashboard demo to version2.1.1. - Added the CraftAttack-inspired tablist death counter to the project presentation. - Updated documentation and release metadata. - Deployed the updated homepage and dashboard demo to Cloudflare Pages.2.1.0BasicStats 2.1.03 weeks ago 2.1.0
- Added optional Discord webhook support. - Added notifications for: -Discord Webhook Notifications
Player joins -
Player deaths -
Rank-ups -
Rank-downs -
Completed goals -
Newly detected goals - Added individual event toggles in
config.yml. - Discord notifications are disabled by default.
- Added configurable webhook username. - Added simple configuration directly inConfiguration
config.yml. - Webhook notifications work independently from the dashboard.
- Only official Discord webhook URLs are accepted. - Webhook URLs are never shown in the dashboard or server logs. - Disabled Discord mentions to prevent unwantedSecurity
@everyoneor role pings. - Added protection against invalid or unsafe webhook URLs.
- Webhook messages are sent asynchronously. - Added a bounded message queue to prevent server lag. - Added automatic retry handling for temporary errors and Discord rate limits. - Added throttled error logging to keep server logs clean.Performance & Reliability
- Updated plugin version toOther Improvements
2.1.0. - Updated documentation and configuration examples. - Improved compatibility and stability of external notifications.2.0.1BasicStats 2.0.13 weeks ago 2.0.1
- Refined the Dashboard into a cleaner, faster quick-read overview. - Moved diagnostics and server settings to the dedicated Settings page. - Added quick routes for Players, Leaderboards, the Rank ladder and Help. - Added desktop navigation shortcuts using keys1–8. - Added active navigation states with improved accessibility support. - Added a visible loading state for manual refreshes. - Prevented duplicate snapshot requests while refreshing. - Added an unsaved-changes indicator to the Settings page. - Disabled the Save button until actual changes are made. - Improved feedback for loading, saving, successful updates and errors. - Kept feature toggles consistent across navigation and quick routes. - Added reduced-motion support for users who prefer fewer animations.2.0.0BasicStats 2.0.04 weeks ago BasicStats 2.0.0
Server Dashboard
- Added a complete local web dashboard for server administrators - Dashboard is disabled by default and can be enabled withdashboard.enabled: true- Dashboard binds to127.0.0.1by default for safer local use - Token-protected read-only dashboard access - Temporary 15-minute admin tokens for server settings - Added Dashboard, Players, Leaderboards, Ranks, Goals, Deathlog, Help and Settings pages - Added a Help page with connection instructions, troubleshooting and the community DiscordPlayer Profiles
- Added detailed player profile pages - Added player statistics, rank progress, rank factors, goals and death history - Added player comparison support - Player names in tables can open their detailed profileHistory and Charts
- Added saved trend history for: - Online players - Total playtime - Deaths - Rank points - Added 24-hour, 7-day and 30-day chart ranges - History is stored locally without external telemetryLeaderboards
- Added configurable leaderboard filters - Added Rank, Playtime, Kills and Deaths leaderboards - Added Lifetime, Daily and Weekly periods - Added lifetime-only Rank leaderboard support - Added configurable leaderboard sizeRank System
- Added a complete ore-based rank ladder - Added material stages such as blocks, raw ores and ingots - Added rank points, progress bars and weighted rank factors - Added rank leaderboards - Added rank progression details to player profiles - Added configurable death penalties and rank point lossServer Overview
- Added today's peak player count - Added active session information - Added last and next automatic backup information - Added local storage and database status - Added live server event feed for: - Player joins - Deaths - Rank promotions - Rank demotions - Goal eventsSettings
- Added grouped settings sections: - General - Display - Features - Ranks - Leaderboards - Backups - Added dashboard feature permissions for: - Player lists - Player profiles - History - Leaderboards - Ranks - Goals - Deathlog - Event feed - Server overview - JSON/CSV exports - Feature restrictions are enforced server-side - Disabled dashboard features do not disable Minecraft statistics or commands - Addeddashboard.enabledto completely disable the web dashboard - Existing configuration values are preserved during migrationExports
- Added JSON server report export - Added CSV player statistics export - Exports include rank data and tracked statistics - Export access can be disabled in dashboard settingsReliability and Performance
- Improved configuration migration - Improved dashboard reload handling - Added safer data saving and recovery behavior - Reduced unnecessary rank, placeholder and leaderboard recalculations - Improved GUI and empty-state handling - Improved command feedback and error messages - Improved handling of expired admin tokens - Added clearer dashboard connection and save error recoveryCompatibility
- Improved compatibility with modern Bukkit-based servers - No mandatory external dependencies - PlaceholderAPI remains optional - Dashboard and statistics work locally without external services or telemetry1.7.4BasicStats 1.7.44 weeks ago 1.7.4
- Reduced unnecessary display updates: actionbar and bossbar text now update only when their rendered content changes. - Avoided repeatedly assigning the same scoreboard and bossbar player state. - Improved cleanup when switching display modes or disabling a personal display. - Hardened GUI pagination when data or configuration changes. - Added clearer empty-data handling in statistics, goals and leaderboard views. - Added another compatibility pass for the Minecraft 1.17.1 API baseline and modern Paper/Purpur servers. - Kept the release focused on stability, performance and compatibility ahead of the dashboard update.1.7.3BasicStats 1.7.34 weeks ago 1.7.3
- Completed the English default configuration and removed remaining hardcoded German fallback text. - Added automatic translation merging without overwriting custom translations. - Added clearer permission errors and improved/basicstats settingsinformation. -/basicstats reloadnow reports the reloaded areas. - Added new rank placeholders: -%basicstats_rank_next%-%basicstats_rank_max%-%basicstats_rank_points_to_next%-%basicstats_rank_activity_score%- Added caching for rank calculations, PlaceholderAPI values, sidebar rendering and leaderboards. - Sidebar updates now only run when displayed values actually change. - Improved shift-click and multi-result crafting statistics. - Added protection against duplicate death-penalty processing. - Added atomicdata.ymlsaves and a data-format version marker. - Added corrupt-file preservation and automatic backup restoration. - Added configuration validation and automatic default-key migration. - Improved localized death causes and tablist death-counter titles. - Added clearer Java compatibility logging. - Updated documentation, permissions and scoreboard explanations.1.7.2BasicStats 1.7.24 weeks ago 1.7.2
- Lowered the plugin API version from1.20to1.17- Improved compatibility with Minecraft1.17.1and newer - Added support for older Spigot, Paper and Purpur servers - Kept the plugin free from NMS and version-dependent internals - Improved Modrinth version detection through the lower API version - Updated compatibility and Java requirements in the documentation - Tested successfully on the latest Paper server version1.7.1BasicStats 1.7.14 weeks ago [Homepage](https://basicstats-minecraft.pages.dev/)1.7.1
New since 1.5.0
- Added a complete material-based rank system - Rank progress is calculated from multiple factors: - Playtime - Blocks broken - Blocks placed - Items crafted - Player kills - Mob kills - Distance walked - Damage dealt and taken - Jumps - Deaths remove 50 rank points by default - Added a configurable death penalty cooldown - Rank stages now use actual Minecraft materials - Added 27 material-based rank stages - Iron, Copper and Gold use three stages: - Block - Raw material - Ingot - Other materials use their appropriate item forms - Rank icons now match the player’s current rank - Added rank icons for Stone, Coal, Copper, Iron, Gold, Redstone, Lapis Lazuli, Quartz, Emerald, Diamond, Ancient Debris and Netherite - Added/basicstats rank [player]- Added/basicstats rank list- Added/basicstats rank details- Added/basicstats top rank- Added rank information to statistics, profiles, comparisons, leaderboards and the inventory menu - Added automatic rank-up and rank-down notifications - Deathlog now displays lost rank points - Rank is shown in the sidebar, action bar, boss bar and tab list - Added personal display layouts: -default-compact-rank-focused- Added PlaceholderAPI placeholders for rank, rank points, progress and death penalties - Added configurable rank factors, weights and target values - Completed the English translations for the sidebar, action bar, boss bar, tab list and rank system - Unified the visible rank name to Rank throughout the plugin1.5.0BasicStats 1.5.04 weeks ago Added: Ore Rank System
- Added 36 rank stages from Stone III to Netherite I. - Each ore rank has three levels: III, II and I. - Rank progress is calculated from playtime, mining, building, crafting, combat, movement, damage and jumps. - Added a default death penalty of 50 rank points. - Added a 5-minute cooldown to prevent repeated deaths from removing points too quickly. - Added/basicstats rank [player]. - Added rank information to player profiles and the inventory menu. - Added PlaceholderAPI placeholders for ranks and rank progress. - Added configurable rank factors, targets and death penalties inconfig.yml.1.4.1BasicStats 1.4.14 weeks ago Fixed
- Fixed missing menu messages on existing installations. - New default message keys are now added automatically during updates. - Custom translations remain unchanged.1.4.0BasicStats 1.4.04 weeks ago BasicStats 1.4.0
New features
- Added/basicstats compare <player>for direct player comparisons. - Added/basicstats infowith server, Java, storage, PlaceholderAPI and backup diagnostics. - Added statistics for: - Blocks placed - Items crafted - Damage dealt - Damage taken - Added daily and weekly tracking for the new statistics. - Added more PlaceholderAPI placeholders, including: - Extended statistics - Daily and weekly values - Playtime rank - Completed goals - Online player count - Added paginated inventory pages for statistics, death logs, goals and leaderboards. - Added previous-page and next-page navigation buttons. - Added configurable leaderboards.Configuration
The newleaderboardssection allows you to configure: - Default statistic - Default time period - Maximum leaderboard size - Available leaderboard statistics - Number of entries shown in the GUICompatibility
- Improved compatibility with Spigot, Paper and Purpur. - No external services or mandatory dependencies required. - PlaceholderAPI remains optional.1.3.2BasicStats 1.3.24 weeks ago Compatibility & hosting improvements
- Improved compatibility for Spigot, Paper and Purpur servers. - Added explicit standalone server-plugin metadata. - No required external services, additional ports or mandatory dependencies. - PlaceholderAPI remains completely optional. - Added a startup compatibility summary showing the detected server platform. - Kept the plugin free of NMS and version-specific internals. - Improved documentation for hosting platforms such as Aternos.1.3.0Settings, Profiles & Backups4 weeks ago BasicStats 1.3.0
Added
- Added/basicstats settingsfor personal display settings. - Added a settings section to the inventory GUI. - Added configurable number, time and date formats. - Added safe statistic reset commands with confirmation. - Added automatic rotating backups. - Added the manual/basicstats backupcommand. - Added/basicstats profile [player]. - Added playtime ranks and completed-goal progress to player profiles. - Added daily and weekly leaderboard filters.Commands
-/basicstats settings-/basicstats profile [player]-/basicstats topstats <stat> daily-/basicstats topstats <stat> weekly-/basicstats reset <player> <stat> confirm-/basicstats backupCompatibility
- Built against Paper API 1.20.6. - Designed for Paper and compatible Purpur versions. - No NMS or version-specific internals are used.1.2.1Inventory GUI Update4 weeks ago BasicStats 1.2.1
Added
- Added the/basicstats menuinventory GUI. - Added separate categories for statistics, death logs, goals and leaderboards. - Added clickable navigation with back and close buttons. - Added German and English GUI translations. - Added thebasicstats.menupermission. - Added localized statistics, goal and leaderboard displays.Compatibility
- Built against Paper API 1.20.6. - Designed for Paper and compatible Purpur versions. - No NMS or version-specific internals are used.1.2.0BasicStats 1.2.04 weeks ago BasicStats 1.2.0
Added
- Added the central/basicstatscommand. - Added help, subcommands and tab completion. - Kept the original commands compatible. - Added German and English localization. - Added configurable MiniMessage output. - Added permissions for all commands. - Added/basicstats reload. - Added persistent death logs. - Added daily and weekly statistics. - Added personal goals. - Added statistics leaderboards. - Added playtime, first-join and online-player commands. - Added sidebar, actionbar and bossbar display modes. - Added scoreboard restoration when disabling the sidebar. - Added optional PlaceholderAPI support. - Added a Bukkit Services API for other plugins.Compatibility
- Built against Paper API 1.20.6. - Tested successfully on Paper 1.20.6 Build 151. - Targeted for Paper and compatible Purpur versions. - No NMS or version-specific internals are used. - Spigot and Bukkit are not officially supported.1.1.0Todes anzeige in tablist wie bei craftattack plugin 1.1.0Oct 25, 2025 V1 halt KA alle basic features
Similar projects
Plugin →Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Plasmo Voice
A proximity voice chat mod with audio positioning and lots of features
4.1MSueta
Customizable Player Models
Customize your minecraft avatar!
3.2MSueta