SkillLevels
Description
The plugin's goal is to deliver completly customisable level systems, to allow servers and plugin to level everything they want. Each level system gives it own amount of points per level, which can be, for example, used to buy new skills.
Also, this plugin provides 3 handler (xp, level, points) for every system for the CurrencyHandler plugin, which allows other plugins to use these values without even knowing the plugin itself.
Metrics
This plugin utilises Hidendra's plugin metrics system. You can opt-out under <yourPluginFolder>/PluginMetrics/config.yml
The following informations will be collected:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's implementation and game version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
- Your online-mode
- Your server location
- The amount of level systems, you use
Usage
Configuration
The plugins creates a default config.yml, if there is none.
name - the name of the level system, as shown ingame
formula - the formula, which is used for level calculation. x is the level. You can use + ,- ,* ,/ ,^ ,log(), sqrt() and recur(). ^ is expotential, like x^2 = x*x | log() = natural logarithm (base e) | sqrt() = sqare root | recur() = the result of this formula, with the value within the brackets - make sure you always end at 0 with this one, or you'll cause a endless loop!
pointsperlevel - the amount of points awarded per level
maxlevel - the maximum level - set to 0 if you want a endless level system
levelKey - the key of the levels, which will be used for the CurrencyHandler plugin
levelName - the name of thelLevels as shown ingame
expKey - the key of the exp, which will be used for the CurrencyHandler plugin
expName - the name of the exp as shown ingame
pointKey - the key of the points, which will be used for the CurrencyHandler plugin
pointsName - the name of the points as shown ingame
actions - here you save the information about what action gives which amount of xp. You can also enter negative values to reduce the XP of a player. Currently valid actions are:
MOBKILL: #called when a mob gets killed by a player <nameofmob>: <xp> MOBDAMAGE: #called when a mob gets damaged by a player, xp are rewarded per point of damage <nameofmob>: <xp> MOBTAME: #called when a mob gets tamed by a player <nameofmob>: <xp> BLOCKDESTROY: #called when a block gets destroyed by a player <nameofmob>: <xp> BLOCKPLACE: #called when a block gets placed by a player <nameofmob>: <xp> ITEMCONSUME: #called when a item gets consumed by a player (drinking, eating) <nameofmob>: <xp> EVENT: #used for some smaller events FISHING: <xp> #called when a fish get caught EXPCHANGE: <xp> #called when a player's vanilla exp changes, plugin xp are rewarded per vanilla xp LEVELCHANGE: <xp> #called when a player's vanilla level changes, xp are rewarded per level CUSTOM: #used by plugins, which want to add new actions to this plugin #the keys are defined by the plugins
Commands
User Commands:
/level help [command] - view a command's help page
/level stats [player] - shows your or the player's stats
Admin Commands:
/level add <player> <system> <xp|points|level> <amount>
/level revoke <player> <system> <xp|points|level> <amount>
/level set <player> <system> <xp|points|level> <amount>
/level reset <player> - set a player's stats to 0
/level reload - reload the configuration
Permissions
levels.user - access to all user commands levels.command.help - access to /level help levels.command.stats - access to /level stats levels.admin - access to all admin commands levels.command.add - access to /level add levels.command.set - access to /level set levels.command.revoke - access to /level revoke levels.command.reset - access to /level reset levels.command.reload - access to /level reload level.system.<systemname> - access to levelsystem <systemname>
Source
This plugin is Open Source. You can get the Source Code at GitHub.


