
PlayTimeManager
PlayTimeManager is a playtime tracker that monitors player activity with extensive customization and automated rewards.
Список изменений
❗️The plugin remains fully compatible with data from version 3.0.4 and earlier. Before making any modifications, a backup is automatically created, ensuring a seamless and secure migration to the latest version without data loss. ❗️
New Features & Improvements
New support for custom playtime formats
Introduced a comprehensive playtime format system enabling the possibility to create personalized time display formats through YAML configuration files stored in the Customization/PlaytimeFormats directory.
The system supports both internal plugin placeholders and PlaceholderAPI (PAPI) placeholders by appending the custom format name after a colon (e.g., %PLAYTIME:custom% or %PTM_playtime:custom%) at the end of the placeholders.
The system features automatic zero-value hiding and singular/plural unit selection, it also provides configurable labels for all time units with advanced formatting options using time value and unit label placeholders. For more info, take a look at the new wiki page!
New /playtimereset subcommands
Enhanced the /playtime <target> reset command with expanded reset options providing more granular control over player data management. The updated system replaces the previous limited parameters (all, db, stats, joinstreak) with a comprehensive set of specific reset types, allowing you to target exact data components without affecting unrelated information.
New reset types:
server_playtime- Resets only server statistics (PLAY_ONE_MINUTE)playtime- Resets database playtime records (artificial and actual)last_seen/first_join- Individual timestamp data managementjoinstreak: Resets both absolute and relative join streak recordsjoinstreak_rewards- Resets reward progress and tracking separately from streak countsgoals- Targets completed goals data specificallyeverything- Complete reset (replaces oldallparameter) with clearer scope definition
New /playtimeattribute command
Added a new /playtimeattribute <attribute> [true|false] command (alias: /ptattr) for managing internal player attributes within PlayTimeManager.
- Requires the permission with
playtime.others.attributes - Currenlty only 1 attribute supported as argument:
hidefromleaderboard - Directly modifies a new config field:
placeholders.playtime-leaderboard-blacklist
Folders organization and configs updater
The "Translations" folder has been renamed to "Customizations" to better reflect its expanded purpose beyond just language files.
- Relocated command messages -
playtime-self-messageandplaytime-others-messagemoved from main config toCustomizations/Commands/commands-config.yml
Completely rewritten config file versioning system for better performance and usability, now before updating the updater will create a complete backups of the entire PlayTimeManager folder instead of database-only entries.
More caching!
Enhanced performance through the implementation of a dedicated cache system for commands and GUIs configuration files. This optimization reduces file I/O operations by storing frequently accessed configuration data in memory, resulting in less server overhead.
Bug Fixes
- Fixed
not-in-leaderboard-message: now if a player isn't in the leaderboard the correct config message is displayed whe usingPTM_rankPAPI placeholder. - Fixed playtime leaderboard player hiding mechanism: replaced permission-based system with a config-based one. See
/playtimeattributecommand in the wiki for more info.
