EconXP

EconXP

13.5k Downloads

Overview

EconXP by Agnate
version: 0.5.0 | craftbukkit: #1.3.1 | Source | Developer API


Features

  • Let players use their experience points to buy things! Since people can already buy Enchantments with experience points, why not buy be able to buy from shops as well!
  • Supported by Vault!
  • Works with Minecraft 1.3.1!
  • Simple config file!
  • No permission system needed (though there are permissions available if you want them)!


Description

EconXP is an economy system that users the player's experience points (the green orbs collected from monsters) as the currency. With the introduction of Enchanting costing experience, it will be interesting to see economies based around the concept of trading experience points, especially since they are already naturally collected and used, thus giving them an inherent value.

EconXP is now supported by Vault, so any shop or currency-related plugin that uses Vault can have EconXP as its currency type! I will also be adding Register support later, allowing EconXP to be used with many existing shop and economy-related plugins.


Minecraft Levels and Experience

Minecraft's levelling system is a bit strange and can be confusing to some people. Here's a quick explanation of how it works.

Players collect experience by slaying monsters, and the experience appears as green orbs on the ground. Upon receiving experience, players gain levels. As of MC 1.3.1, the calculations have changed for levels. I'm too lazy to write out the actual equations, though, so you'll have to check out the Minecraft wiki: MinecraftWiki.net


Developer API

Check out the API description here: Developer API


Configuration File

Configuration file can be found after starting the server, under the EconXP folder (inside the plugins folder).

Quote from the Config file:

death-drop-percent: 100 - [0 to 100] By default, all players drop all of their experience (rather than only 60% of the old total). Do NOT use decimals here (or a percent sign). Set this to 0 (zero) if you do not want players to lose their experience points when they die.


Commands

Commands are OP-only by default, with the exception of the balance (self-only) command. Therefore, players should not be able to transfer experience unless given permission to use the command. All commands map 1-to-1 with the respective permission (see the Permission section below).

All commands can use abbreviated forms. For example, you may type /exp bal instead of /exp balance. Player names and amounts can not be abbreviated, however (for obvious reasons). Capitalization of player names does not matter, though.

All <amount> and <factor> values must be positive (greater than or equal to zero). All <amount> values must be whole numbers.

Quote from the Command list:

/exp OR /econxp - The base commands (ie. /exp add Agnate 5 ). Either base can be used.

/exp add <player> <amount> - Add experience to the player.
/exp subtract <player> <amount> - Subtract experience from the player.
/exp multiply <player> <factor> - Multiply experience of a player by the factor.
/exp divide <player> <factor> - Divide experience of a player by the factor.
/exp set <player> <amount> - Set the experience of a player.
/exp clear <player> - Clear ALL of the experience of a player.

/exp balance - See your current experience points.
/exp balance <player> - See the current experience of a player.

/exp give <player> <amount> - Give some of your experience to a player.
/exp transfer <giver> <amount> <receiver> - Transfer from Giver to Receiver.


Permissions

Permissions are required to use any of the commands. Players can receive experience without having any permissions.

Quote from the Permission nodes:

econxp.* - Allows all commands. econxp.add - Allows player to use the add command.
econxp.subtract - Allows player to use the subtract command.
econxp.multiply - Allows player to use the multiply command.
econxp.divide - Allows player to use the divide command.
econxp.set - Allows player to use the set command.
econxp.clear - Allows player to use the clear command.
econxp.balance - Allows player to use balance to check players' balances.
econxp.give - Allows player to give their own experience to a player.
econxp.transfer - Allows player to use the transfer command.


To Do List

My current to-do list:


Changelog

View the Change Log.


Credits

  • Flamers for helping with the banner's screenshot!
  • Nijijokun for posting his iConomy source (and thus helping me figure out JNBT)!
  • garbagemule for inspiration and code help along the way!