Timed Ranker
TimedRanker is a simple Bukkit plugin that allows your server to automatically promote/rank-up players based on their total online time.
Features
- Records total minutes online on server
- Easy to use configuration
- Per World (World Specific) promotions supported (if Permission plugin supports it as well)
- Customize how often promotion check is run to optimize the plugin for your server
- Essentials AFK Integration
- RoyalCommands AFK Integration
- lang.yml file for easy message customization
- Uses Vault for permission management
- Stores total gameplay time in an SQLite .db file or a MySQL database
- Constantly maintained
Commands
- tranker playtime [player] - See yours/others' gameplay time
- tranker top - See top 10 player with longest gameplay time
- tranker left [player] [world] - See how much time you/others have left until your/their next promotion
- tranker settime <player> <minutes> - Set number of minutes played for a player
- tranker addtime <player> <minutes> - Add specified amount of minutes played to a player
- tranker delete <player> - Delete the specified player from the database
- tranker convert - Convert SQLite to MySQL
- tranker purge - Purge the database
- tranker reload - Reload configuration file
Permissions
- tranker.playtime - Permission to use /tranker playtime - Default: true
- tranker.playtime.others - Permission to use /tranker playtime <player> - Default: op
- tranker.top - Permission to use /tranker top - Default: true
- tranker.left - Permission to use /tranker left - Default: true
- tranker.left.others - Permission to use /tranker left <player> - Default: op
- tranker.settime - Permission to use /tranker settime <player> <minutes> - Default: op
- tranker.addtime - Permission to use /tranker addtime <player> <minutes> - Default: op
- tranker.delete - Permission to use /tranker delete <player> - Default: op
- tranker.convert - Permission to use /tranker convert - Default: op
- tranker.purge - Permission to use /tranker purge - Default: op
- tranker.reload - Permission to use /tranker reload - Default: op
- tranker.* - Permission to use all commands
Configuration
#true for MySQL and false for SQLite useMySQL: false #MySql databse information, if useMySQL is set to true mysql: username: 'mysql_username' port: 3306 password: 'mysql_password' host: 'mysql_host' database: 'mysql_database' #Integrate Essentials AFK (default: false) essentialsAfk: false #Integrate RoyalCommands AFK (default: false) rcmdsAfk: false #Debug mode. If you don't know what you're doing, leave it false (default: false) debugMode: false #How often, in minutes, does the server check for promotions (default: 5) checkPeriod: 5 #Delete players from the database who haven't logged in the set amoutn of days. Set 0 to disable. purgeAfter: 0 #Default group for new players defaultGroup: default #If groups are set-up per world. Eg. in world "creative" the player is in group "moderator", #but in world "survival" player is in group "user" #Only enable this if your permission plugin supports per-world groups. #Notice: If you enable this, the plugin will use perworld.yml #so you'll need to set up rank promotions in that file instead of this #(default: false) worldSpecificGroups: false #Promotions list promote: #Group to be promoted from group1: #Group to be promoted to to: group2 #After specified amount of time played. Usage: d - for days, h - for hours, m - for minutes; #use spaces between days, hours and minutes timeReq: 1h 2m group2: to: group3 timeReq: 2d 3h
You can set up as many promotions as you like.
NOTE: Starting with v1.3 world specific promotions are supported. In order to set them up, edit perworld.yml instead of config.yml
Installation
First install SQLibrary and Vault and then a permission plugin of your choice. If you want AFK Integration, you need to install Essentials or RoyalCommands as well. Then drag and drop the jar file in your plugins folder and run the server to generete the config file and database. After that you can proceed to editing the configuration.
Dependencies
- Vault
- SQLibrary
- Essentials (if essentialsAfk is set to "true" in the config )
- RoyalCommands (if rcmdsAfk is set to "true" in the config)
Changelog
v1.4.1
- Update to CB 1.6.4-R0.1
- Added support for MySQL databases
- Added feature for converting old SQLite databases to MySQL
- Added feature which deletes players who haven't logged in for a configurable amount of time from the database
- Added command for adding playtime to a player
- Added command to delete a player from the database
- Minor fixes to some commands and methods
v1.3.7
- Update to CB 1.6.2-R0.1 Snapshot
- Minor fixes
v1.3.6
- Update to CB 1.5.2-R0.1
- Fixed bug with Privileges not promoting
- Updated ChatColor parsing and lang.yml
v1.3.5
- Support for colors in lang.yml
v1.3.4
- Commands are now case insensitive for players' names
- Changed command /tranker left to /tranker left <player> [world]
- Added a few fields in lang.yml
- Fixed up onDisable() disabling all tasks by other plugins (thanks gmcferrin)
- Minor fix-ups and tests
v1.3
- Added per world promotions
- Added option to choose how often the plugin checks for promotions
- Added perworld.yml for setting up world specific promotions
- Minor fixes and code clean-up
- Changed debugInfo to debugMode in config.yml
- Added defaultGroup in config.yml
- Made config.yml easier to read and added extra comments to help server admins
v1.2
- Added RoyalCommands AFK Integration
- Added lang.yml for message configuration
v1.1
- Added Essentials AFK Integration
- Added command /tranker left
- Added debugInfo configuration option
- Changed how time required for rankup is set in the config file
- Some minor fixes for some commands
v1.0
- Initial Release
Other Stuff
My Plugins
- Reaction Rewards - Periodic reaction tests/trivia questions with rewards in items or money. Check it out :D
@poobis
Exactly the same. Example:
@raizenpk
Okay, I just reinstalled the plugin. Here is the entire current config. The only ranks that I did with it are Newbie, Default, and Esquire. They are typed correctly (Just like they are in group manager) http://pastebin.com/raw.php?i=dGQBm4UQ
My question is: What should the spacing and indentations look like after the second group?
@poobis
Well that's not the full config file. Read the full documentation above.
@raizenpk
It's pretty much the entire config, the only thing that I left off of it was the beginning where it has the instructions. What should the indentations and spacing look like?
@poobis
First of all, you should make sure the yaml syntax is correct (I see the intendation is not correct on pastebin). Secondly, the timeReq is the same for the last 3 rank promos. You should change it to different values. Also, make sure the groups names in the config are written correctly, like in the permission plugin's config.
Btw, what you showed me is the full config.yml ?
I am having an issue. When I type "/tranker left player" It says "Player has no permissions pending. Even though they are the lowest rank, this problem emerged after I messed around with the config for a bit. Before I did this, it would just cycle through the ranks. It went from "Newbie" to "Default" to "Esquire" (I am doing medieval ranks.) Anyway, here is my config currently. Should I have left the ignored lines? Please explain to me what I need to do, the example config is not clear because it does not show what to do after the second group. I am seeking answers to both of my problems, but mainly the second one. Thank you.
http://pastebin.com/raw.php?i=D0hzbWVH <- My current config.
@musichouse
I would strongly suggest Essentials over rCmds.
yea but i just realized that royalcommands is not showing up
@musichouse
Do you have all the dependencies installed ?
when i issue any of the commands it just goes unknown command
its saying that the plugin is not working
@musichouse
Gone red ? What do you mean ?
hello i just put the plugin onto my server at it has gone red when doing /pl what have i done wrong
Version 1.3.6 is waiting for approval
@ThisUsernameIsMine
Make a Rar Archive with your plugins folder, upload it to some website and send me a private message with the link. I might have higher chances of figuring out what's wrong.
@raizenpk
Well i disabled most plugins and checked all my configs, but i couldn't find anything that could be intefering with your plugin. But i'm no developer so who knows what else might be causing this.
Active plugins at time of testing:
Resulting outcome (enabled debug mode for bPermissions and TimedRanker):
I'm out of ideas...
@ThisUsernameIsMine
Delete your config, start the server, stop it, reconfigure and see if it works. If it doesn't it must be some mistake in your configuration in bPermission or a conflict with another plugin. Also, I built the plugin with the beta build, I don't support dev builds (although I don't see why it wouldn't work with the latest dev)
I really don't get it why it doesn't do anything for me @ latest CraftBukkit dev-build using bPermissions 2.10.4 and Vault 1.2.25...
My config looks like this:
But nothing happens :( (already enabled debug mode but it doesn't show anything except that it looks for possible rankups).
This mod looks so simple and clean.. why won't it work for me! :(
thank you so much for this :)
might you make the messages from the plugin have chat colors? would be simple as passing the message from the lang file through the chatcolor class. color coding it for players and striping for non players.