ModsJava
[1.8-1.14] CorePlaytime - The best plugin for rewarding players for playing!
CorePlaytime | The best plugin for rewarding players for playing!
What is CorePlaytime?
CorePlaytime is a plugin designed to track and reward players for playing on your server! Every second a player is on your server their playtime increases. Create custom rewards that are given when a player reaches a certain amount of playtime!
How do I use CorePlaytime?
You must first download CoreData , my personalized data solution available to the public, and place it in your plugins folder. Next, download CorePlaytime and place it in your plugins folder. Finally, start your server and you're good to go!
What are the benefits of CorePlaytime?
CorePlaytime allows you to define different rewards equipped with a name, a required amount of time needed to claim the reward, and commands to be ran when the reward is given. This allows you to have full control over what rewards are on your server!
On the backend, CorePlaytime has a very simple to use developer API to allow quick integration into your projects. This API is built with CoreData to provide you with the fastest and most efficient methods of reading and writing data.
What are the commands and permissions?
Code (Text):
/playtime (coreplaytime.playtime)
/playtime <player> (coreplaytime.playtime.other)
/playtime help (NO PERMISSION)
/playtime rewards (coreplaytime.rewards)
/playtime reload (coreplaytime.reload)
/playtime set <player> <time in seconds> (coreplaytime.set)
/playtime <player> (coreplaytime.playtime.other)
/playtime help (NO PERMISSION)
/playtime rewards (coreplaytime.rewards)
/playtime reload (coreplaytime.reload)
/playtime set <player> <time in seconds> (coreplaytime.set)
The plugin has a built-in messages.yml file that will control all messages in the plugin. It provides complete control over all messages that are displayed in the plugin.
Spoiler: Messages.yml
Code (YAML):
# CorePlaytime | messages.yml
#
# This config file manages all of the messages for the plugin.
# Some messages have placeholders.
# Be sure to read the config before changing the lines.
# Error Messages
error-nopermission : "&e[PlayTime] &7You do not have permission to use this command."
error-playeronly : "&e[PlayTime] &7This is a player only command."
error-playernotfound : "&e[PlayTime] &7Player not found."
error-notnumber : "&e[PlayTime] &7This command contains an invalid number."
# Time format
# Placeholders:
# -> %days%
# -> %hours%
# -> %minutes%
# -> %seconds%
format-time : "&a%days% &7days, &a%hours% &7hours, &a%minutes% &7minutes, and &a%seconds% &7seconds"
# `/points help` messages
success-help :
- "&e--[ PlayTime Help Menu ]--"
- "&7-> &e/playtime &7- Shows your total playtime"
- "&7-> &e/playtime <player> &7- Shows another player's total playtime"
- "&7-> &e/playtime help &7- Shows this help menu"
- "&7-> &e/playtime rewards &7- Shows all rewards and their information"
- "&7-> &e/playtime reload &7- Reloads messages and rewards"
# `/playtime` and `/playtime <player>` message
# Placeholders:
# -> %target% - The player who's playtime was found
# -> %playtime% - The playtime of the player
success-playtime : "&e[PlayTime] &a%target% &7has played for &r%playtime%&7."
# `/playtime set <player> <time>` messages
# Placeholders:
# -> %target% - The player who's playtime was changed
# -> %playtime% - The target's new formatted playtime
success-playtime-sender : "&e[PlayTime] &a%target% &7has played &a%playtime%&7."
success-playtime-target : "&e[PlayTime] &7You have played &a%playtime%&7."
# `/playtime rewards` messages
# Placeholders:
# -> %name% - The reward name
# -> %time% - The reward's time in a formatted message
# -> %status% - The sender's reward claimed status
success-rewards-header : "&e--[ PlayTime Rewards ]--"
success-rewards-body : "&7-> &e%name% &7needs &e%time% &7to claim. (Status: &e%status%&7)"
#
# This config file manages all of the messages for the plugin.
# Some messages have placeholders.
# Be sure to read the config before changing the lines.
# Error Messages
error-nopermission : "&e[PlayTime] &7You do not have permission to use this command."
error-playeronly : "&e[PlayTime] &7This is a player only command."
error-playernotfound : "&e[PlayTime] &7Player not found."
error-notnumber : "&e[PlayTime] &7This command contains an invalid number."
# Time format
# Placeholders:
# -> %days%
# -> %hours%
# -> %minutes%
# -> %seconds%
format-time : "&a%days% &7days, &a%hours% &7hours, &a%minutes% &7minutes, and &a%seconds% &7seconds"
# `/points help` messages
success-help :
- "&e--[ PlayTime Help Menu ]--"
- "&7-> &e/playtime &7- Shows your total playtime"
- "&7-> &e/playtime <player> &7- Shows another player's total playtime"
- "&7-> &e/playtime help &7- Shows this help menu"
- "&7-> &e/playtime rewards &7- Shows all rewards and their information"
- "&7-> &e/playtime reload &7- Reloads messages and rewards"
# `/playtime` and `/playtime <player>` message
# Placeholders:
# -> %target% - The player who's playtime was found
# -> %playtime% - The playtime of the player
success-playtime : "&e[PlayTime] &a%target% &7has played for &r%playtime%&7."
# `/playtime set <player> <time>` messages
# Placeholders:
# -> %target% - The player who's playtime was changed
# -> %playtime% - The target's new formatted playtime
success-playtime-sender : "&e[PlayTime] &a%target% &7has played &a%playtime%&7."
success-playtime-target : "&e[PlayTime] &7You have played &a%playtime%&7."
# `/playtime rewards` messages
# Placeholders:
# -> %name% - The reward name
# -> %time% - The reward's time in a formatted message
# -> %status% - The sender's reward claimed status
success-rewards-header : "&e--[ PlayTime Rewards ]--"
success-rewards-body : "&7-> &e%name% &7needs &e%time% &7to claim. (Status: &e%status%&7)"
If you make any changes, simply type "/playtime reload" to load new messages!
How do I configure rewards?
Rewards have three properties: a name, an amount of time needed to activate the reward, and a list of commands that the reward will run. Once you have created these rewards, simply open the rewards.yml file and create a new entry. Here's some example formats.
Spoiler: Rewards.yml
Code (YAML):
# CorePlaytime | rewards.yml
#
# This config file manages all of the rewards for the plugin.
# Each reward has a name, amount of time needed to trigger the reward, and commands to run when the reward is activated
# Please ensure each reward has a different ID. The ID does not have to be a number and is not used.
rewards :
1 :
name : "Basic"
time : 50.0
commands :
- "say %player% reached 50 seconds of playtime!"
- "give %player% diamond 1"
2 :
name : "Advanced"
time : 100.0
commands :
- "say %player% reached 100 seconds of playtime!"
- "give %player% emerald 1"
#
# This config file manages all of the rewards for the plugin.
# Each reward has a name, amount of time needed to trigger the reward, and commands to run when the reward is activated
# Please ensure each reward has a different ID. The ID does not have to be a number and is not used.
rewards :
1 :
name : "Basic"
time : 50.0
commands :
- "say %player% reached 50 seconds of playtime!"
- "give %player% diamond 1"
2 :
name : "Advanced"
time : 100.0
commands :
- "say %player% reached 100 seconds of playtime!"
- "give %player% emerald 1"
If you make any changes, simply type "/playtime reload" to load new rewards!
How do I use this in my plugins?
The first step is ensuring your plugin depends on CorePlaytime.
Code (YAML):
depend
:
[ CorePlaytime
]
Code (Java):
if
(
!
this .
getServer
(
) .
getPluginManager
(
) .
isPluginEnabled
(
"CorePlaytime"
)
)
{
this . getLogger ( ) . severe ( "[Hook] CorePlaytime not found. Disabling plugin..." ) ;
return ;
}
PlaytimeHandler playtimeHandler = ( ( com. ethanpritchard . points . Main ) this . getServer ( ) . getPluginManager ( ) . getPlugin ( "CorePlaytime" ) ) . getPlaytimeHandler ( ) ;
this . getLogger ( ) . severe ( "[Hook] CorePlaytime not found. Disabling plugin..." ) ;
return ;
}
PlaytimeHandler playtimeHandler = ( ( com. ethanpritchard . points . Main ) this . getServer ( ) . getPluginManager ( ) . getPlugin ( "CorePlaytime" ) ) . getPlaytimeHandler ( ) ;
Code (Java):
playtimeHandler.
getPlaytime
( uuid
)
;
playtimeHandler. setPlaytime ( uuid, playtime ) ;
playtimeHandler. hasEnoughPlaytime ( uuid, playtime ) ;
playtimeHandler. setPlaytime ( uuid, playtime ) ;
playtimeHandler. hasEnoughPlaytime ( uuid, playtime ) ;
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.7, 1.8, 1.9
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
[1.8-1.14] CorePlaytime - The best plugin for rewarding players for playing! is a free Minecraft Java mod. Compatible with Minecraft 1.7, 1.8, 1.9, 1.10 and newer. Downloaded 1,090 times (via Spigot). Download it and open it directly in the game.