SkillLevels

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.


Comments

  • To post a comment, please or register a new account.
Posts Quoted:
Reply
Clear All Quotes

About This Project

Categories

Members

Recent Files