Перейти к содержимому
Mineforgian

PlayTimePulse

A lightweight, accurate playtime tracker with rewards, GUI, pre-config and PlaceholderAPI support.

Загрузки
870
Подписчики
1
Обновлён
13 августа 2025 г.
Лицензия
GPL-3.0-only

Опубликован 12 июля 2025 г.

⏱️ PlayTimePulse

A lightweight, accurate Minecraft plugin that tracks player playtime, integrates seamlessly with PlaceholderAPI, and provides a built-in rewards system with a claimable GUI.


🌟 Main Features

  • Real-time Playtime Tracking - Accurately tracks how long each player has been on your server
  • 🎁 24+ Playtime Rewards - Milestone-based rewards that players can claim as they play more
  • 📖 Pageable Rewards GUI - Easy-to-navigate interface with multiple pages for all rewards
  • 🧾 Simple Commands - Intuitive /playtime command for players and admin tools
  • 🔌 PlaceholderAPI Support - Integrates with popular plugins through placeholders
  • 🛡️ AFK Protection - Prevents players from cheating by being AFK
  • 💾 Efficient Data Storage - Lightweight flat-file storage with automatic saving
  • High Performance - Optimized code that won't slow down your server
  • 🛡️ Reward Error Handling - Prevents reward spamming even when commands fail
  • ⚙️ Flexible Configuration - Easily customize all rewards, GUI, and settings

📦 All Features

  • ⏳ Real-time playtime tracking (saved + current session)
  • 🧾 /playtime command:
    • Shows formatted playtime in Xd Yh Zm
    • Opens a GUI to claim playtime-based rewards
  • 🎁 Reward System:
    • Milestone-based claimable rewards (24 rewards included in current config, with more to be added over time)
    • Supports commands (since most of the things are given by commands)
    • Blocks duplicate claiming with tracked saves
    • Player head support for GUI icons (e.g., custom heads, player skulls)
    • Custom sound effects when claiming rewards
    • Error handling for failed commands to prevent reward spamming
  • 📖 Pageable Rewards GUI:
    • Pagination support for large numbers of rewards
    • Customizable slots per page
    • Navigation buttons for moving between pages
  • 🧭 Navigation System:
    • Previous/Next page buttons
    • Close button to exit the GUI
    • Customizable navigation button materials and names
    • Optional custom head textures for navigation buttons
  • 🛡️ AFK Protection:
    • Prevents AFK farming of playtime
    • Configurable interaction threshold and time window
    • Tracks meaningful player interactions to validate activity
  • 🔌 Full PlaceholderAPI support
  • 📊 bStats integration for anonymous usage statistics
  • 📁 Flat-file storage with autosave
  • ⚙️ Performance optimized and easy to configure

🔧 Commands

Command Description Permission
/playtime Shows playtime and rewards GUI playtime.use
/playtime add <player> <hours>h [<minutes>m] Add playtime to player playtime.admin
/playtime reset <player> Reset player's playtime and claimed rewards playtime.admin

🧩 PlaceholderAPI Support

Placeholder Description
%playtime_overall_formatted% Total time (saved + current), formatted like 2d 4h 30m
%playtime_formatted% Current session only, formatted
%playtime_overall% Total time in seconds (saved + current)
%playtime_saved% Saved playtime only (in seconds)
%playtime_current% Current online session (in seconds)

🧪 Future Plans

  • 🎨 Gradient color support for formatted text
  • 🌟 Particle effects for reward claiming
  • 🐛 Debug mode for easier troubleshooting
  • ➕ More features coming soon

📁 Configuration

  • config.yml: Define playtime milestones, rewards (commands), requirements, rewards icon/lore, and sound effects.
    • Each reward can have a custom sound when claimed using the claimSound parameter
    • Choose from over 400 Minecraft sounds (e.g., entity.player.levelup, block.note_block.pling)
    • All sounds play at standard volume (1.0) and pitch (1.0)
    • Custom heads can be added using headId with Base64 texture values
    • Specify which page a reward should appear on using the page parameter (starting from 0)
    • Navigation buttons can use custom player heads with headId parameter
    • GUI slots and slots per page are configurable
    • AFK protection settings:
      • interaction-threshold: Minimum number of interactions required in the time window
      • time-window-minutes: Time window in minutes to check for interactions

📥 Installation

  1. Download the latest release
  2. Drop the .jar file into your /plugins folder
  3. Restart the server
  4. Configure config.yml to define rewards / requirements.
  5. (Optional) Install PlaceholderAPI for placeholders

✅ Requirements

  • Minecraft: 1.21 up to 1.21.8
  • Java: 21+
  • Server: Paper / Pufferfish / Purpur (others need testing)
  • (Optional) PlaceholderAPI

📊 Statistics

PlayTimePulse collects anonymous usage statistics through bStats. This helps us understand how the plugin is used and guides future development.

You can view plugin statistics at bStats.

To opt out of statistics collection, set enabled: false in the /plugins/bStats/config.yml file.


💬 Support

Ченджлог

1.0.5-SNAPSHOTРелиз1.21.6, 1.21.7, 1.21.8 · 13 августа 2025 г.

🛠 Version 1.0.5-SNAPSHOT – Customization Update

✨ Additions

  • Config: disable-default-reward-information — full customization of reward text.
  • Rewards: Added vanilla Minecraft rewards for levels 20–23 (no external plugin dependencies).

🐛 Fixes

  • Fixed page navigation bug that blocked access to multi-page rewards.
  • Corrected "More Rewards Coming Soon" item display behavior.

⚙️ Changes

  • Removed unnecessary clear-default-rewards configuration parameter.
  • Corrected YAML formatting in the default config.
  • Enhanced vanilla Minecraft compatibility using only standard items and commands.

Summary:
This update gives server administrators complete control over how reward information is displayed to players while fixing a critical navigation issue that prevented access to rewards on subsequent pages.

1.0.4Релиз1.21.6, 1.21.7, 1.21.8 · 8 августа 2025 г.

🌟 New Features

⏱️ Real-time Tracking

  • Second-by-Second Updates – Playtime now updates every second instead of every minute for ultra-precise tracking
  • Enhanced Accuracy – More accurate playtime measurement for fair reward distribution

🏆 Leaderboard Support

  • Top Player Placeholders – Added placeholders for top 10 players (%playtime_top_1% through %playtime_top_10%)
  • Player Position Placeholder – Added %playtime_leaderboard_position% to show a player's rank
  • Real-time Updates – Leaderboard updates every second with playtime tracking

🔧 Admin Tools

  • Reload Command – Added /playtime reload command for administrators to reload configuration without restarting the server
  • Debug Mode – Added debug mode with detailed logging for troubleshooting
    • Enable with debug: true in config.yml
    • Toggle with /playtime debug [true/false] command
    • Shows detailed information about reward processing and configuration loading

🌍 Multi-Language Support

  • 8 Languages Supported:
    • 🇬🇧 English (en) – Default language
    • 🇨🇳 Chinese (zh)
    • 🇧🇷 Brazilian Portuguese (pt_BR)
    • 🇷🇺 Russian (ru)
    • 🇵🇭 Filipino (fil)
    • 🇩🇪 German (de)
    • 🇫🇷 French (fr)
    • 🇫🇮 Finnish (fi)
  • Language Configuration:
    • Set language with language: [code] in config.yml
    • Language files automatically copied to plugin directory for customization
    • Fallback system: Language files → config translations → default English

🛠️ Improvements

⏱️ Playtime Tracking

  • Second Precision – All time displays now include seconds for more precise information
  • Command Enhancements/playtime add command now supports seconds parameter (/playtime add <player> <hours>h [<minutes>m] [<seconds>s])

📝 Configuration

  • Reduced Console Spam – Most INFO logs now only appear in debug mode
  • Better Error Handling – Improved error messages and warnings for configuration issues
  • Language Settings – Added language option in config.yml
  • Lore Placeholder Support – Added support for PlaceholderAPI placeholders in reward item lore

📋 Commands

  • Tab Completion – Added tab completion support for all commands
  • Permission Checks – Enhanced permission validation for admin commands
  • Seconds Support – Added seconds parameter support to /playtime add command

🎯 Logging

  • Conditional Logging – Most verbose logs now only appear when debug mode is enabled
  • Cleaner Console – Reduced unnecessary INFO messages in normal operation
  • Debug Mode – Detailed logging available for troubleshooting configuration issues

🧩 Placeholders

  • Comprehensive Documentation – Added detailed section in README for all PlaceholderAPI placeholders
  • Advanced Reward Placeholders – Documented placeholders for reward status tracking
  • Leaderboard Placeholders – Added new leaderboard placeholders for top players and player positions
  • Usage Examples – Added practical examples for using placeholders in various contexts

🐛 Bug Fixes

  • Configuration Validation – Fixed potential NullPointerExceptions in configuration loading
  • Reward Processing – Improved error handling when loading rewards
  • Language Loading – Fixed issues with loading translation files
  • Placeholder Logic – Improved logic for determining next reward in progression

📖 Documentation

  • README Updates – Comprehensive documentation of new features
  • Command List – Added new admin commands to command table
  • Configuration Guide – Updated configuration documentation with language settings
  • Installation Guide – Improved installation instructions
  • PlaceholderAPI Support – Added comprehensive section with all placeholders and usage examples
  • Leaderboard Documentation – Added documentation for new leaderboard placeholders

📦 For Server Owners

✨ New Commands

/playtime reload              - Reload plugin configuration
/playtime debug [true/false]  - Toggle debug mode

⚙️ Configuration Changes

# New debug setting
debug: false

New language setting

language: en # Supports: en, zh, pt_BR, ru, fil, de, fr, fi

🌍 Language Customization

  1. After first run, language files are copied to plugins/PlayTimePulse/lang/
  2. Edit the file for your selected language
  3. Use /playtime reload to apply changes without restarting

🐛 Debug Mode

Enable detailed logging for troubleshooting:

debug: true

Or use the command:

/playtime debug true    # Enable debug mode
/playtime debug false   # Disable debug mode
/playtime debug         # Check current debug mode status

🧩 PlaceholderAPI Placeholders

Basic Placeholders:

  • %playtime_overall_formatted% – Total formatted playtime
  • %playtime_days%, %playtime_hours%, etc. – Time components

Advanced Reward Placeholders:

  • %playtime_required% – Time for next unclaimed reward
  • %playtime_required_{rewardId}% – Status of specific reward
  • %playtime_time_left_{rewardId}% – Time left for specific reward
  • %playtime_claimable_rewards% – Number of claimable rewards

Leaderboard Placeholders:

  • %playtime_top_1% through %playtime_top_10% – Top players in playtime
  • %playtime_leaderboard_position% – Player's position in leaderboard

See README for complete list and usage examples.

📈 Previous Versions

For changelog of previous versions, see GitHub releases.

1.0.3Релиз1.21.6, 1.21.7, 1.21.8 · 31 июля 2025 г.

📖 Page Logic Just Got Smarter!

✨ What’s New: • Detects bad indentation in rewards config 🛠️ • “More Rewards Coming Soon” on last page 🎁 • Clearer, friendlier error messages 😊

💡 Why It’s Cool: No more mystery bugs! Get helpful console hints to fix issues fast. Setup is smoother than ever! 🚀

🔄 To Update: Just replace your current .jar with this one and restart your server! 🔧

1.0.3Релиз1.21.6, 1.21.7, 1.21.8 · 31 июля 2025 г.

-version with fixed excessive logs

1.0.3Релиз1.21.6, 1.21.7, 1.21.8 · 30 июля 2025 г.

Version with fixed config

1.0.3Релиз1.21.6, 1.21.7, 1.21.8 · 30 июля 2025 г.

🎉 PlayTimePulse v1.0.3 – Major Update! 🚀

Reward your players' time like never before with PlayTimePulse ⏰✨
This update brings major improvements to performance, customization, and user experience.


🌟 Key Improvements

🎮 Core Features

  • 📖 Pageable GUI – Effortlessly browse 24+ rewards with a clean, scrollable interface
  • ⚙️ Flexible Config – Tailor everything from layout to rewards, sounds, and visuals
  • 🛡️ Enhanced Stability – Robust systems prevent common errors and ensure smooth operation

🚫 Error Handling

  • ✅ Automatically blocks reward spamming and double-claiming
  • 🧠 Intelligent checks to ensure fair reward distribution

⚡ Performance

  • 💨 Lightweight & optimized – Designed for high-efficiency with minimal server impact

🎨 User Experience

  • 🖱️ Intuitive GUI Navigation – Fully configurable navigation buttons and layout
  • 🎵 Sound Feedback – Each reward can trigger its own unique sound effect

🔒 Protection & Fairness

  • 🛑 AFK Detection – Optional system to block idle farming
  • 📊 Activity Tracking – Rewards real playtime and in-game actions, not just login time

💡 Reward your players' time with PlayTimePulse! ⏰✨

1.0.2Релиз1.21.6, 1.21.7, 1.21.8 · 24 июля 2025 г.

🎮 PlayTimePulse v1.0.2 - The Epic Upgrade

🌟 Highlights

  • Complete Rebranding: PlayTimeTracker evolves into PlayTimePulse
  • Immersive Sound System: Custom sounds for each reward tier
  • Enhanced Admin Tools: New commands for better server management
  • Performance Optimization: Better resource handling and bug fixes

🎯 Major Changes

🔄 Core Updates

  • Rebranded to PlayTimePulse - a more dynamic and engaging name
  • Integrated bStats for anonymous usage insights (ID: 26638)
  • Optimized data handling and storage systems
  • Enhanced thread safety across all operations

🎵 New Sound System

  • Custom sound effects for reward claims
  • Support for 400+ Minecraft sounds
  • Per-reward sound configuration
  • Default sound: entity.player.levelup
  • Volume and pitch consistency (1.0)

⚡ Command Enhancements

New Admin Commands:

/playtime add h [m] # Add playtime /playtime reset # Reset progress

Features:

  • Smart tab completion
  • Sound feedback for actions
  • Detailed error messages
  • Permission-based access

🛡️ Technical Improvements

  • Updated to Java 21
  • Optimized dependency management
  • Reduced plugin size
  • Enhanced error handling
  • Improved memory management

📊 Statistics Integration

  • Anonymous usage tracking via bStats
  • Opt-out available in bStats config
  • Performance impact monitoring
  • Usage pattern analysis

📝 Documentation

  • Updated documentation for new features
  • Enhanced configuration examples
  • Comprehensive sound setup guide
  • Clear command usage instructions

🐛 Bug Fixes

  • Fixed memory leaks in playtime tracking
  • Improved sound effect error handling
  • Enhanced data saving thread safety
  • Better error reporting

📥 Installation

  1. Drop PlayTimePulse.jar into plugins folder
  2. Restart server
  3. Configure as needed
  4. Previous data automatically migrates

🔑 Permissions

  • playtime.use: Basic access (default: true)
  • playtime.admin: Admin commands (default: op)
1.0.1Релиз1.21.6, 1.21.7, 1.21.8 · 20 июля 2025 г.

🔥 What's New

  • Full support for Minecraft 1.21.8
  • 🎭 Integrated support for Minecraft-Heads.com (see config)

Комментарии

Загружаем…