Sueta

PlayerStats API

2.2.0

Lightweight vanilla player statistics via REST API for Paper servers

·Plugin
  1. 2.2.0latestPlayerStats API 2.2.0Sep 15, 2026
    - Updated to 26.2
    15 downloads
  2. 2.1.3PlayerStats API 2.1.3Jun 24, 2026
    Added
    - Added local activity history storage in plugins/PlayerStatsAPI/history.json. - Added playtime growth tracking based on minecraft:custom/minecraft:play_time. - Added activity metadata: first seen, last seen, last join, last quit, last session duration, active-now duration, and recorded playtime delta. - Added daily playtime buckets for charting activity by date. - Added UTC weekday-hour heatmap buckets for per-player and global activity heatmaps. - Added activity API endpoints: - GET /moss/activity/<uuid> - GET /moss/activity/<uuid>/playtime?limit=100 - GET /moss/activity/top?window=day|week&limit=10 - GET /moss/activity/heatmap - GET /moss/activity/heatmap/<uuid> - Added history.max-points-per-player config option.
    Changed
    - Player list and player detail API responses now include a compact activity object when history is available. - /moss/top/* and /moss/activity/top now cap requested limits by web.max-top-results. - Updated documentation for activity endpoints, history storage, build verification, and release flow.
    Fixed
    - Replaced deprecated Paper OfflinePlayer#getLastPlayed() usage with OfflinePlayer#getLastSeen(). Full Changelog: https://github.com/AREKKUZZERA/PlayerStats-API/compare/2.…
    77 downloads
  3. 2.1.2PlayerStats API 2.1.2May 25, 2026
    What's New
    - Added the new admin command /playerstatsapi with aliases /psa and /psapi. - Added /psa help, /psa status, /psa reload, and /psa synclog <on|off>. - Added config control for [Sync] console logs: stats.log-sync-updates. - Added configurable /statstop limits: commands.default-top-limit and commands.max-top-limit. - Reworked the default config.yml into clearer stats, commands, and web sections.
    Changes
    - [Sync] logs are now disabled by default to avoid console spam. - /psa reload and /statsreload now apply config changes at runtime. - Older flat config keys are still supported, so existing configs keep working.
    42 downloads
  4. 2.1.1PlayerStats API 2.1.1May 21, 2026
    Changed
    - Reduced final plugin jar size. - Removed unused Maven Shade packaging for a cleaner lightweight jar. - Removed Maven descriptor metadata from the final jar. - Disabled Java debug metadata in release classes. - Updated Palantir Java Format to 2.90.0 for compatibility with the current JDK.
    Fixed
    - /statsreload now reports completion after stats reload actually finishes. - HTTP server executor is now shut down when the plugin stops. - CORS allowed methods now match the API surface: GET, OPTIONS.
    29 downloads
  5. 2.1PlayerStats-API 2.1Mar 28, 2026
    Added
    - /stats <игрок> — сводка статистики: время игры, смерти, прыжки, км, убийства, урон, блоки, крафт - /statsreload — принудительная перезагрузка кэша статистики - /statsonline — список онлайн-игроков с UUID - /statstop <ключ> [лимит] — топ игроков по любому ключу статистики (асинхронно) - Tab-complete для /stat, /stats, /statstop - Permissions-система для всех команд - StatsUtil.totalSection() — суммирование всей секции статистики - Web API /moss/summary теперь включает players_online, total_player_kills, total_mob_kills, total_damage_dealt - Web API /moss/online теперь возвращает { count, players[] } - Web API /moss/top/ теперь включает поле online для каждого игрока - Web API /moss/players поддерживает параметр ?stats=true (по умолчанию — без статистики, быстрее) - GitHub Actions: автопубликация на Modrinth при push тега v*
    Fixed
    - /stat теперь работает с оффлайн-игроками (через кэш и Bukkit.getOfflinePlayer) - onlineSet переведён на ConcurrentHashMap.newKeySet() — правильная семантика - resolveIntParam больше не принимает отрицательные значения - handleSummary использует StatsUtil вместо ручного парсинга JSON - handlePlayerByUUID и handlePlayerByName возвращают полный playerEntry с полем online - lastPathSegment корректно обрабатывает пустые сегменты пути
    Changed
    - Версия плагина: 2.0 → 2.1 - getStatsCache() возвращает Collections.unmodifiableMap вместо прямой ссылки
    83 downloads
  6. 2.026.1 - Stability & Performance (1.21.X)Mar 28, 2026

    StatsPlugin 1.21.x - Release 2.0

    🚀 Improvements

    * Оптимизирован WebServer: * удалён дублирующий /top/jumps * унифицирован парсинг параметров * добавлено поле rank в топах * Оптимизирован StatsManager: * убран лишний AtomicInteger * исправлен кэш онлайн-игроков (retainAll) * Оптимизирован StatsUtil: * единый Gson * унифицирован доступ к stats root * добавлены minecraft:killed, minecraft:killed_by

    🐛 Fixes

    * Исправлен pom.xml (<n> → <name>) * Удалено дублирование web-port / web.port * Убрано дублирование логики лимитов * Устранён двойной проход по кэшу

    ⚠️ Requirements

    Paper 1.21+*

    🧠 Internal

    * Упрощена архитектура Web API * Снижен overhead загрузки статистики

    📊 Logging

    * Добавлены логи синхронизации загрузки статистики
    30 downloads
  7. 1.6PlayerStats API 1.21.xFeb 23, 2026

    StatsPlugin 1.21.x - Release 1.6

    ✅ Compatibility / Совместимость
    Paper / Minecraft:* 1.21.x (1.21, 1.21.1 … 1.21.11) Java:* 21 API:* Paper API 1.21 (no patch-specific binding / без привязки к патч-версиям) ---
    ✨ What’s changed / Что изменилось
    Added pagination support* for /moss/players with limit and offset parameters. Добавлена поддержка пагинации для /moss/players с параметрами limit и offset. * Returns metadata envelope: total, limit, offset, players. Возвращает метаданные: total, limit, offset, players. * Deterministic UUID sorting preserved. Сохраняется детерминированная сортировка по UUID. * Implemented safe pagination parsing: Реализована безопасная обработка пагинации: * limit defaults to existing behavior (maxResponsePlayers). limit по умолчанию = maxResponsePlayers. * Negative limit → clamped to 0; oversized limit → clamped to max. Отрицательные значения → 0; слишком большие → до максимума. * offset defaults to 0; negative values clamped to 0. offset по умолчанию = 0; отрицательные значения → 0. Extended `/moss/top/<stat_key>` to support explicit section selection*. Добавлена поддержка явного указания секции для /moss/top/<stat_key>. * Query param form: /moss/top/<stat_key>?section=<section> * Path variant: /moss/top/<section>/<stat_key> * Legacy behavior preserved when section is not provided. Старое поведение сохраняется, если секция не указана. * Implemented strict section-based lookup & validation: Реализован строгий поиск по секции и валидация: * Dynamic section discovery from loaded stats. Динамическое определение доступных секций. * 400 response for invalid section. 400 при некорректной секции. * 404 if stat key is absent in the specified section. 404, если stat_key отсутствует в указанной секции. * No fallback when section is explicitly provided. Без fallback при явном указании секции. ---
    🔧 Improvements / Улучшения
    * Added reusable StatsUtil helper methods: * getStatInSection * sectionHasStatKey * getAvailableStatSections Добавлены вспомогательные методы StatsUtil для устранения дублирования логики и поддержки динамического поиска по секциям. * Improved backward compatibility - existing clients continue working without changes. Улучшена обратная совместимость - существующие клиенты работают без изменений. * Minor internal refactoring and safety checks (no breaking API changes). Небольшой рефакторинг и дополнительные проверки безопасности (без ломающих изменений API). ---
    📦 Build details / Информация о сборке
    * Single universal JAR: statsplugin-1.21.x-1.6.jar Универсальный JAR: statsplugin-1.21.x-1.6.jar Built with Java 21* Сборка выполнена под Java 21 * Maven-based build (mvn clean package) Maven-билд (mvn clean package) ---
    ⚠️ Notes / Примечания
    * Pagination significantly improves performance for large servers and makes the API UI-friendly for dashboards and web panels. Пагинация значительно улучшает работу на больших серверах и делает API удобным для веб-интерфейсов. * Explicit section selection resolves stat key ambiguity (e.g., mined vs used) and enables entity kill leaderboards. Явное указание секции решает проблему неоднозначных stat_key и позволяет строить топы по убийствам мобов. * Fully backward compatible with previous 1.21.x releases. Полностью совместим с предыдущими релизами 1.21.x. ---
    📌 Upgrade / Обновление
    * Replace the old JAR in your plugins/ folder and restart the server. Замените старый JAR в папке plugins/ и перезапустите сервер.
    73 downloads
  8. 1.5PlayerStats API 1.21.XDec 22, 2025
    Вот корректно отформатированная версия для вставки в Modrinth changelog (с правильными переносами, разделителями и Markdown-структурой): ---

    StatsPlugin 1.21.x — Release 1.5

    ✅ Compatibility / Совместимость
    Paper / Minecraft:* 1.21.x (1.21, 1.21.1 … 1.21.11) Java:* 21 API:* Paper API 1.21 (no patch-specific binding / без привязки к патч-версиям) ---
    ✨ What’s changed / Что изменилось
    Switched to the stable Paper 1.21.x API branch* to ensure compatibility across all 1.21 patch versions. Переход на стабильную ветку Paper API 1.21.x для корректной работы на всех патч-версиях 1.21. Removed any dependency on patch-specific Paper builds*. Убрана зависимость от конкретных патч-сборок Paper. * Verified plugin startup and runtime on multiple Paper 1.21.x versions. Проверен запуск и корректная работа плагина на нескольких версиях Paper 1.21.x. API usage is strictly limited to public Bukkit / Paper APIs* (no NMS, no CraftBukkit). Используется только публичный Bukkit / Paper API (без NMS и CraftBukkit). ---
    🔧 Improvements / Улучшения
    * Improved overall build stability and forward compatibility within the 1.21.x lifecycle. Повышена стабильность сборки и долгосрочная совместимость в рамках линейки 1.21.x. * Ensured a clean shaded JAR without embedding Paper API classes. Проверено, что итоговый JAR не содержит классов Paper API. * Minor internal cleanups and safety checks (no breaking changes). Небольшие внутренние улучшения и проверки без изменения публичного API плагина. ---
    📦 Build details / Информация о сборке
    * Single universal JAR: statsplugin-1.21.x-1.5.jar Универсальный JAR: statsplugin-1.21.x-1.5.jar Built with Java 21* Сборка выполнена под Java 21 * Maven-based build (mvn clean package) Maven-билд (mvn clean package) ---
    ⚠️ Notes / Примечания
    This release is intended to be used as-is* on all Paper 1.21.x servers. Релиз предназначен для использования без пересборки на всех серверах Paper 1.21.x. * No configuration changes are required when upgrading from previous 1.21 builds. Изменения в конфигурации при обновлении не требуются. ---
    📌 Upgrade / Обновление
    * Replace the old JAR in your plugins/ folder and restart the server. Замените старый JAR в папке plugins/ и перезапустите сервер. --- Если хочешь, могу сделать версию с более «продающей» подачей (чтобы релиз выглядел сильнее на Modrinth в ленте обновлений).
    88 downloads

Similar projects

Plugin →