[1.13-26.2] ~ RewardsLite | Customizable rewards with ease
v3.2.3A very customizable and lightweight plugin that gives rewards to players based on playtime.
v3.2.3latestv3.2.3: Fix false "outdated" warning on the latest versionAug 7, 2026 The plugin will not give an outdated message anymore when on the latest version of RewardsLite.v3.2.2v3.2.2 - Improved ServerEssentials ReliabilityJul 4, 2026 ServerEssentials recently added official support for other plugins to read its AFK status. RewardsLite now uses that official connection instead of the older workaround it needed before, making AFK detection with ServerEssentials more reliable. No setup needed - if you use ServerEssentials, this improvement applies automatically after updating.3.2.1v3.2.1 - Broader AFK Detection & Latest Minecraft SupportJul 3, 2026 This update makes RewardsLite smarter about detecting when a player is away from their keyboard (AFK), so playtime rewards are tracked more fairly, and keeps the plugin current with the latest Minecraft version. What's new: · RewardsLite can now recognize AFK status from three more popular plugins: CMI, AFK+, and ServerEssentials - on top of the Essentials support it already had. · If your server runs more than one of these plugins at the same time, RewardsLite now correctly listens to all of them instead of blindly trusting just one, so AFK players are still caught no matter which plugin flagged them. · RewardsLite now also checks whether a plugin's AFK feature is actually switched on. For example, if you have CMI installed but its built-in AFK tracking is turned off in favor of another plugin, RewardsLite will no longer get fooled into thinking no one is ever AFK. · Updated to support the latest Minecraft server version. No setup needed - if you already use one of these plugins, AFK detection will simply start working after you update.3.2.0v3.2.0: Bump to Minecraft 26.1 and optimize cachingMay 8, 2026 - Bump to Minecraft 26.1 - Optimize caching - Optimize DB querries3.1.10v3.1.10 - Fix GUI inventory issuesAug 14, 2024 - Fixed inventory bugs causing the plugin to not behave as expected. Please use Rewardslite-3.1.10_bc-1.13-1.20.4.jar for Minecraft 1.20.4 and older.3.1.9v3.1.9 - Update to Spigot 1.21.1 and add backwards compatibilityAug 14, 2024 · Added Spigot 1.21.1 support. · Created a quick fix for backwards compatibility Please use Rewardslite-3.1.9_bc-1.8-1.20.4.jar for Minecraft 1.20.4 and older.3.1.83.1.8: Fix reward breakage when reloading/restartingJul 1, 2024 - Fix a bug that broke the reward file upon restarting the server or reloading the plugin.3.1.7v3.1.7: Fix several bugs and update to 1.21Jun 14, 2024 - Fixed a bug where PaperMC wasn't able to load rewards anymore because of version checking. - Fixed a bug where logging out could throw a playtime error. - Updated the plugin to support Minecraft 1.21.3.1.6v3.1.6 - Fix bug when re-generating reward files & fix HEX supportJun 28, 2023 Fixes · Fixed bug in re-generating reward files resulting in malformed YML. · Fixed bug resulting in HEX colors not being supported anymore.3.1.5v3.1.5 - Added support for version 1.20.xJun 27, 2023 Updates · Added support for Minecraft version 1.20.x. · Updated the following dependencies to their latest version: · bstats · placeholderAPI · ConfigUpdater · EssentialsX3.1.4v3.1.4 - Fix disableGainingPlaytimeInWorlds reset bugFeb 2, 2023 Fixes · Fix disableGainingPlaytimeInWorlds reset bug3.1.3v3.1.3 - QOC Changes & Bug FixesSep 2, 2022 FIXES · Having no permission for a command will now display an error message to that player. · Fixed the /rewardslite reload command not doing anything. · Fixed bug in the /playtop false command not reducing the playtime with the afktime when using the YAML storage type. · Fixed a bug with the rewards repository not being initialized correctly on reload. · Fixed a bug where the "Loaded <amount> rewards" message was not being displayed on reload. CHANGES · Switched commands to a builder style design pattern. · Rewritten the playtime command to be much more straight forward. · Updated the update checker to check for both outdated and dev builds. · Added a warning for both outdated & dev builds warning the player to update or be cautious accordingly.3.1.2v3.1.2 - Optimizations & Bug FixesAug 23, 2022 FIXES · Fixed SQL Exception on the /playtop <afkincluded> command. · Fixed plugin reload only reloading online player cached data and not also offline player cached data. · Fixed missing ':' in the digital time representation between weeks & days. · Fixed spelling mistake in the config.yml. · Fixed the /rewardslite reset <player> <reward> command not reloading rewards and not counting down rewards for the player until next login. · Fixed a bug where the rewards interface wouldn't show rewards when logging out and back in while using LuckPerms. CHANGES · Optimize plugin reloading. · Commands will now lookup offline players async resulting in a much smoother and more optimized experience when executing commands. ADDITIONS · Disable plugin and show error on duplicate reward UUID to prevent player data progress loss and data corruption.3.1.1v3.1.1 - playtop command changesAug 14, 2022 CHANGES · The playtop command will now look at the countPreviousTowardsPlaytime configuration and lookup playtime accordingly (only for Minecraft 1.16 and up).3.1.0v3.1.0 - Playtime leaderboards, time display configurations, custom reward ordering & fixesAug 13, 2022 FIXES · Broadcast notifications will now correctly replace the %player% placeholder with the player gaining the reward and not the player seeing the notification. ADDITIONS · Added leaderboards for both playtime and AFK time with the /playtop and /afktop command. /playtop also has an optional parameter to include AFK time or not. The amount of players shown on the leaderboard can be adjusted in the config.yml file. · Added a new time unit limitation configuration in the config.yml which allows you to set a limit on what time displays will show. For example if set to MINUTES all time displays will show time in x minutes, x seconds. If set to DAYS, time displays will show as x days, x hours, x minutes, x seconds. · Added custom rewards ordering for the /rewards GUI. You are now able to choose how rewards will be ordered and displayed in the config.yml. CHANGES · Time displays are now also able to display time in weeks instead of maximum days.3.0.7v3.0.7: Fix reset command bug & redeem rewards in correct orderAug 6, 2022 FIXES - Fixed a bug where the reset command would create a new player data object internally if the player being reset was online which would also count playtime, even when the player went offline afterwards. CHANGES - Rewards will now loop in ascending order based on playtime required for the reward while counting down.3.0.6v3.0.6 - Command bug fixingJul 25, 2022 FIXES · Fixed the playtime command for self and target execution. · Fixed the rewards command for self and target execution.3.0.5v3.0.5 - Fixed several bugs in commandsJul 25, 2022 FIXES · Fix arguments lookup in all commands. · Fix playtime command for versions 1.15 and lower when no target was given. · Fix rewards command with target player returning rewards of command executor instead of target.3.0.4v3.0.4 - Quick commands fixJul 22, 2022 FIXES · Commands no longer require capital perfect names to work.3.0.3v3.0.3 - Abstraction, bug fixes, update checker and reward configuration reorderingJul 22, 2022 FIXES · Fixed the null pointer exception when converting data from LPR to RL (this time for real). · Fixed a small memory leak while converting LPR playerdata to RL. · Fixed the usage comment for the "disabledWorldRedeemWarning" message in the messages.yml file. ADDITIONS · The update checker will now actually check for newer updates of the plugin and warn OP's accordingly. CHANGES · Made commands more abstract, making it easier for me to create them. · Reordered the reward configurations. The display items and notifications will now be at the bottom of the file.3.0.2v3.0.2 - Another round of bug fixingJul 22, 2022 FIXES · Fixed a nullpointer exception on data conversion from LPR to RL when an offline player data was cached. · Fixed "player has never played on this server before", even tho they definitely did, bug. · Fixed a bug where player data wouldn't save if a player joined the server for less then 5 minutes and didn't receive any rewards before logging out. CHANGES · Reworked the way offline players were looked up whenever a command was used. The lookup should be faster and more precise and no longer create empty data.3.0.1v3.0.1 - Added support for older versions & rewards duplication fixJul 18, 2022 ADDITIONS · Added support for Minecraft version 1.8 - 1.17 on top of the 1.18 - 1.19 support the plugin already had. FIXES · Fixed a bug where rewards which name contained capital letters would duplicate themselves.3.0.0v3.0.0 - Complete overhaul of LitePlaytimeRewards [RewardsLite]Jul 17, 2022 Updating to RewardsLite v3.0.0 is not just a drop and play experience. Setting up will be required to have the plugin up and running. Ladies & gentlemen, the wait is finally over. For the past year I have been working on RewardsLite 3.0.0 which is a complete overhaul of the LitePlaytimeRewards plugin. LPR was made as a start up project for learning Spigot plugin development, it turned out pretty good for that time but overall was very poorly optimized and didn't have a lot of features it should have had from the beginning. That is why I chose to re-write the plugin from scratch now that I have much more experiencing in both programming as well as developing Spigot plugins. That being said, what can you expect from RewardsLite in comparison to LitePlaytimeRewards? Let's start off with the obvious, performance. RewardsLite is miles ahead of LitePlaytimeRewards in terms of performance, especially when working with a sizable rewards pool. On top of that asynchronous programming has been used by RewardsLite taking a big load off the main thread of your server. Another big change people have been asking for years is MySQL. Yes, RewardsLite offers data saving to both YAML files as well as a MySQL database, with more options possibly following in the future. It would be a bit much to write a whole essay about what RewardsLite has to offer over LitePlaytimeRewards so I'll narrow it down to a list of the most notable features down below: · Rewards: · Rewards are now configured one per file, not everything in a single configuration. · Rewards will get a unique ID assigned to them upon creation automatically. Making it possible to rename them without losing progress. · A display item can be configured for when a reward is counting down, has a pending claim, has already been claimed and cannot be claimed again and if the player is not eligible for it. · A much more detailed notification system has been made which allows multiple ways of communicating to your players that someone has received a reward or a reward is pending. · Allow both automatic as well as manual claiming of a reward. · Set a maximum amount a reward can be pending before it stops counting. · Set a maximum amount a reward can be redeemed before it goes inactive. · Disabled gaining playtime towards or redeeming rewards in certain worlds. · Miscellaneous: · YAML and MySQL storage options. · Reset command to reset a single (or all) rewards for a single (or all) players. · Automatically convert LitePlaytimeRewards data (both rewards and playerdata) to RewardsLite data. · Added support for PlaceholderAPI and also included placeholders of RewardsLite. · Rewards are now ordered by pending, then by time left and then by name. · The way play and afk time are used has been changed significantly. FAQ Q: Why RewardsLite, why not keep the old name? A: In the future I would like to add different kind of rewards to the plugin which has nothing to do with playtime. Which is why I made the name more towards general rewards and not just playtime rewards. Q: Can I convert my LitePlaytimeRewards data to RewardsLite? A: Yes, RewardsLite has a convert command (/rewardslite convert) which will automatically convert your LitePlaytimeRewards rewards and playerdata to RewardsLite. It also has an option to automatically convert all YAML playerdata to MySQL. Q: How do I create new rewards? A: Creating a new reward is as easy as copying over the reward template (minus the generated section) to a new file and configure it how you want. Afterwards either a plugin reload or server restart is required for the plugin to pick up your new reward. Q: What is the reward UUID? A: A reward is uniquely identifiable by its ID and only by its ID. It is automatically generated upon creating a new reward, and should not be touched or copied over to a new reward. If so, the player data for that reward will be lost for all players. Q: Can I change the file name without my players losing progress? A: Yes, the filename only serves one purpose for the plugin, which is what the permission for your reward will be. The exact permission of your reward can be found in the generated section of your reward file. Q: Can I change the rewards order in the /rewards GUI? A: At the time of writing this, no. The rewards order is hard-coded although I am planning to add a configuration for this in the future. Q: Why did it take you so long? A: Free time baby, all free time I had went into this plugin (and a little towards gaming).2.5.2v2.5.2 - Update to Minecraft 1.19 & attempt to bug fix bossbarJun 21, 2022 Updated the plugin to support Minecraft 1.19. As well as update the dependencies of the plugin to their latest version. On top of that an attempt was made to fix the multiple bossbars appearing when someone received a reward.2.5.1v2.5.1 - Interface fixApr 20, 2022 FIXES - Fixed an IndexOutOfBounds exception on paginated interfaces such as rewards.2.5.0v2.5.0 - Interface bug fix & HEX color supportApr 20, 2022 FIXES - Fixed possible nullpointer exception in the rewards interface. ADDITIONS - Added HEX color support thanks to Eliasegg.2.4.8v2.4.8 - small bug fixDec 10, 2021 FIXES · LPR will no longer throw an error on startup when config updating.2.4.7v2.4.7 - Legacy config discontinuation & Reward loading fixDec 2, 2021 CHANGES - The legacy config of LitePlaytimeRewards 2.3.x is no longer supported and rewards will no longer automatically copy over to the rewards.yml file. FIXES - Rewards will load in correctly after startup again.2.4.6v2.4.6 - Startup bug fix (2)Dec 2, 2021 FIXES - LPR will no longer give an error on startup saying it doesn't find a specific class. I am very sorry for the triple small updates, did some quick rewrites of the project structure and didn't test thoroughly. It should be all fine now and no more (startup) errors should arise.2.4.5v2.4.5 - Server startup fixDec 2, 2021 FIXES - LPR will no longer throw an error on startup claiming config wasn't found.2.4.4v2.4.4 - 1.18 support & quick updateDec 1, 2021 UPDATES - 1.18 support has been added. - The messages.yml file will now update automatically.2.4.3v2.4.3 - 1.17 update and minor code changesJun 17, 2021 CHANGES · Updated the plugin to 1.17. · Minor changes to the code base.2.4.2v2.4.2 - Small bug fixAug 12, 2020 FIXES · Fixed a bug where if a reward was pending, but the player didn't have permission for it anymore, would still count down.2.4.1v2.4.1 - Bug fixesAug 6, 2020 FIXES · The CountAllPlaytime calculation of rewards will now check permissions. · The Rewards GUI will only show rewards that the player can claim or already has claimed.2.4.0v2.4.0 - New AdditionsAug 6, 2020 CHANGES · Rewards will now have to be configured in rewards.yml. Old versions will automatically have their rewards in the config.yml moved to the new file. ADDITIONS · Rewards have a new option called "CountAllPlaytime". Setting this to true will give the reward to the player on next join for all the playtime he gained up until that point. Combining this with the global CountAllPlaytime config option will give the reward for ALL playtime, even the playtime from before the plugin was installed. The plugin will calculate how many times the player can claim the reward by looking at the playtime of that player, subtracting the afk time if afk time is not counted towards the reward, subtracting the amount already redeemed by the player and setting that amount in pending state. On top of that the time till next reward will also be calculated correctly afterwards. · Added the option "InventoryLayout" which allows the server to center the rewards in their GUI. · Added the option "RewardsOrder" which allows the server to choose a specific criteria to order the rewards on in the GUI. · The config file will now update itself to any new version. No configured options will be lost, conversion is automatic. · The rewards in the rewards GUI will now have a live countdown till next reward. REMOVALS · The bstat option has been removed from the config. Disabling now requires you to disable it in the bstat config. FIXES · Fixed a bug in reward claiming if the reward had exactly 0 ticks left to be claimed but the player wasn't eligible it would still countdown.2.3.1v2.3.1 - Bug FixJul 26, 2020 FIXES · Fixed small bug where the /lpr reload command wouldn't reload the rewards of online players correctly.2.3.0v2.3.0 - GUI changes and legacy buildJul 25, 2020 CHANGES · GUI's will not be limited to a size of 54 rewards anymore, if the reward count exceeds this number, a paged GUI will be made. · The plugin will now auto detect legacy versions (1.12) and change config settings accordingly. · GUI's layout have been changed drastically. · The GUI code has been cleaned up and made more performant. REMOVALS · 1.12 version of the plugin has been removed. 1.12 servers may now use the normal version without problems. · Removed max invent size exceeded error from message file. · The /rewards <reward> command has been removed. ADDITIONS · Added new config option 'BorderMaterial' to change the border material of GUI's.2.2.1v2.2.1 - Minor bug fixes and couple of changesMay 16, 2020 CHANGES · Layout for /lrp help | /lrp and command usage messages have been cleaned up. ADDITIONS · Added console information on start up, the following logs have been added: · Creation of userdata file, · Creation of config file, · Creation of messages file, · Essentials installation status, · Specific error handling on wrongly configured config rewards, · Amount of correctly loaded rewards; FIXES · Fixed bug where rewards would use config template for commands on being wrongly configured IF the reward had the name testreward or testreward2. · Fixed bug where commands couldn't be executed from the console.2.2.0v2.2.0 - Vital bug fix, Command system overhaul and code optimizationMay 12, 2020 CHANGES · Complete command system overhaul. · Commands may now remind you what the command looks like on usage of wrong parameters. · Tabcomplete for boolean. · Times are now saved as Integers. · Spelling errors fix in messages. · Changed color of error messages to &c. ADDITIONS · New commands: · /lpr - same as /lpr help. · /lpr help - Shows list of LPR commands. · /lpr reload - Reload config and messages files. · /lpr reset <reward> <player> - Resets the time of a reward for the given player. · Rewards have a new data field called eligible which was saved as -1 before this, making checks more performant. FIXES · Fixed vital IndexOutOfBound error if playtime of rewards ran out and they were looping. · Config now checks if playtime values are not higher then Integer max value. · Config now checks if InventorySpacesNeeded is >= 0.2.1.1v2.1.1 - Bug fix and small performance improvement changesMay 8, 2020 CHANGES · Rewards having a pending state will no longer save every second. FIXES · Fixed a bug where not looping rewards reset themselves and kept on looping on receiving the reward.2.1.0v2.1.0 - Increased performance, customizable messages, cache and bug fixesMay 8, 2020 ADDITIONS · Added playerdata cache. · Added playerdata cache time option to config. · Saved userdata will now fix itself if something happened to it (manually or programmatically). · Every message in the plugin can now be customized in the message.yml file. CHANGES · Quiting the game while in the givereward GUI name typing state will no longer put you in the typing state on next join. · GUI items in the /rewards GUI will now display a message if the player has no permission to claim this reward. · The /givereward command is now able to give rewards to offline players if they have data on the plugin. · The /givereward command now returns a succes message on successful reward given. · Default display item of rewards has been changed to a chest. · Added color code hint to the display name config option. FIXES · Fixed spelling error in permission (litplaytimerewards.rewards -> liteplaytimerewards.rewards) · Fixed error that would kick a player if child command was used with permission to the parent command but not the child command. · Fixed bug where players had to relog for reward permission changes to take effect. · Fixed a bug where a reward with a permission bound to it given to a player without this permission through the /givereward command and put into pending state didn't give the reward until next join. · Fixed tiny memory leak if player left the server with /givereward GUI open. · Fixed a bug where the display description of rewards wouldn't show color if color codes used.2.0.1v2.0.1 - Changes, bug fix and unnecessary code removalMay 2, 2020 Changes · Inegrated bStats into the plugin for follow up. · Playtime commands now use statistics for tick perfect playtime if enabled in config. · Removed unnecessary version check on server start. Fixes · Fixed NullPointerException thrown when playerdata had rewards saved that got removed from the config.2.0.0v2.0.0 - complete plugin overhaulMay 2, 2020 Warning, updating to this version requires the user to generate a new config file and redo it. It will also require the user to remove the LitePlaytimeRewards/userdata folder. The plugin will not work otherwise! That being said, I'm proud to announce the complete overhaul of LitePlaytimeRewards. It has been a long term goal of mine to redo this plugin from scratch and add many many many new features and fix broken/buggy/sloppy code. I strongly recommend updating to this version even if it loses your current userdata. The benefits, performance boost, new features you'll get outweigh it all! Reading the home page of this plugin will give you a better overview of everything that has changed! Read carefully.1.1.1FixesOct 4, 2019 Fixes · Fixed notifications and broadcast notifications not being able to contain essentials color codes. · Fixed link for update checker that would take you to this page.1.1.0Features And FixesOct 4, 2019 Features · Rewards may now check for empty inventory slots first before giving out the reward. Fixes · Fixed reward looping bug, rewards set to not loop would still loop on first installation of plugin.1.0.0Update checkerOct 3, 2019 · Update checker resource ID fix
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta