AutoRanker automatically executes commands on players when the players have met certain requirements in their LogBlock history, in terms of number of blocks created and blocks destroyed, and time spent online.
The intended use case for this plugin is to have players automatically promoted through different ranks as the amount of their work on the server accumulates. Note that this use requires a separate plugin to facilitate ranking commands, such as bPermissions.
Currently the plugin checks if a player meets the requirements of each rank when they log in. If there is interest among server admins, I could make it check periodically for each player that is logged in.
Usage Configuration
The config file is plugins/AutoRanker/config.yml.
Provide a list of ranks in the configuration file. For each rank, provide the set of requirements for achieving that rank, such as the following:
created: blocks placeddestroyed: blocks destroyeddaysonline: days since the player's first loginhoursonline: hours the player has spent logged inhaspermission: a prerequisite permission, such as for a base group-
hasnotpermission: a postrequisite permission, to indicate that a player already has this rank or otherwise shouldn't be eligible for it- If your groups inherit
group.…permissions, this should be the permission that is to be granted for this rank. Otherwise it can be left blank.
- If your groups inherit
For each rank, also provide the commands that should be executed when the requirements are met, in which {PLAYER} is replaced by the name of the player who has met the requirements.
Example configuration
Below is an example configuration with two ranks, builder and architect, using bPermissions to manage the player groups.
ranks:
builder:
requirements:
daysonline: 2
hoursonline: 2
created: 1000
destroyed: 2000
haspermission: group.default
hasnotpermission: group.builder
commands:
- exec u:{PLAYER} a:setgroup v:builder
- say {PLAYER} has achieved Builder rank.
architect:
requirements:
daysonline: 60
hoursonline: 24
created: 10000
destroyed: 20000
haspermission: group.builder
hasnotpermission: group.architect
commands:
- exec u:{PLAYER} a:setgroup v:architect
- say {PLAYER} has achieved Architect rank.
Commands & Permissions
- command:
/autorank reload - permission:
autorank.reload(default: op) - Reload the ranks from the config file.
Alternatives
- Autorank - rank based on amount of time played
- Ranker - rank based on amount of time played, money held, players killed, monsters killed
Requirements
LogBlock is required.
To use the hours online and days online rank requirements, you must have in your LogBlock configuration logPlayerInfo set to true, e.g.:
logging:
logPlayerInfo: true
