Gringotts
Gringotts: Item based currency.
Gringotts is an item-based economy (currency) plugin for the Bukkit Minecraft server platform. Unlike earlier economy plugins, all currency value and money transactions are based on actual items in Minecraft, per default emeralds. The goals are to add a greater level of immersion, a generally more Minecraft-like feeling, and in the case of a PvP environment, making the currency itself vulnerable to raiding.
Gringotts was originally created for the Minecraft Wars PvP/survival server.
Features
- Item-backed economy (configurable, default emeralds)
- multiple denominations with automatic conversion (for example, use emeralds and emerald blocks)
- Storage of currency in chests and other containers, player inventory and ender chests (configurable)
- direct account-to-account transfers commands
- optional transaction taxes
- fractional currency values (fixed decimal digits)
- Account support for Factions, Towny and WorldGuard
- Vault integration
Latest changes
To get notified of new versions, please subscribe to file updates.
v2.9
- DEPENDS ON JAVA 8. If your server is not on Java 8 yet, you should upgrade, or ask your service provider to upgrade. Java 7 isn't supported anymore by Oracle.
- Should now work both in regular as well as async context. This means there should be no more "Asynchronous entity world add" errors anymore, and Gringotts is now compatible with Towny in async mode, as well as other plugins that call economy methods asynchronously.
- The maximum virtual money allowed for an account is now equal to the lowest denomination, instead of the highest. I changed this because that behavior was causing lots of confusion.
- fixed other minor bugs
v2.8
- built for Minecraft 1.9 and Factions 2.8. May not be compatible with older Factions versions!
- unsupported versions of Factions should be handled more gracefully now.
- updated to current version of Metrics-Lite. Fixes annoying error messages.
v2.7
- Named denominations: Each denomination can now have its own name, which will be shown in /balance messages and the like. To activate this feature, use the
named-denominations
config setting. By default this will use the denomination's displayname or regular item name, but you can define a custom name as well. See configuration instructions for details. - Balance messages can now be configured to show only regular balance or also vault/inventory balances.
- Now also supports
&
prefix to color codes in messages and item displayname/lore in addition to the defaultยง
prefix. - can now also used Vault-supported item names in denomination config, not only regular Bukkit names. This can make the config a bit more intuitive. (requires Vault)
- lore config for denomination items now also allows a simple string instead of a string list.
- configuration should now always be loaded as UTF8.
- fixed an issue with
/money
commands failing on some servers.
v2.6
- adds display name and lore support for currency items. See configuration instructions on how to configure this. Note you will need a third-party plugin to rename items not created by Gringotts. Thanks to dj5566 for contributing this feature!
startingbalance
config option works again
Planned Features
See: Gringotts open enhancement issues on GitHub. You're welcome to vote on enhancements important to you, but I might not have the time to implement them.
Instructions
Wiki
Check out the Gringotts Wiki for more hints and a troubleshooting guide.
Installation and Configuration
Download Gringotts and place it in your craftbukkit/plugins folder.
Please see the Configuration and Permissions document on how to configure Gringotts.
Usage
For full information on configuration and usage in Gringotts v2.x, please see the configuration page and the usage page respectively.
Storing money in an account requires a Gringotts vault. A vault consists of a container, which can be either chest, dispenser or furnace, and a sign above declaring it as a vault. A player or faction may claim any number of vaults. Vaults are not protected from access through other players. If you would like them to be, you may use additional plugins such as LWC or WorldGuard.
Player vaults
Place a sign above a container block, with [vault]
written on the first line. If it was created correctly, the sign will display your name on the third line and you will receive a message that the vault has been created.
Faction vaults
Place a sign above a container block, with [faction vault]
written on the first line. If it was created correctly, the sign will display your faction's tag on the third line and you will receive a message that the vault has been created.
Towny vaults
- To make a vault for your town: place a sign above a container block, with
[town vault]
written on the first line. - To make a vault for your nation: place a sign above a container block, with
[nation vault]
written on the first line. If it was created correctly, the sign will display your town's or nation's tag on the third line and you will receive a message that the vault has been created.
User commands
/money
Display your account's current balance.
/money pay <amount> <player>
Pay an amount to a player. The transaction will only succeed if your account has at least the given amount plus any taxes that apply, and the receiving account has enough capacity for the amount.
/money withdraw <amount>
/money deposit <amount>
Withdraw an amount from vault storage into inventory, or deposit from inventory to a vault.
Admin commands
/moneyadmin b <account>
Get the balance of a player's account.
/moneyadmin add <amount> <account>
Add an amount of money to a player's account.
/moneyadmin rm <amount>
Remove an amount of money from a player's account.
/gringotts reload
Reload Gringotts config.yml and apply any changed settings.
Need Help?
- First, check the Wiki.
- For support requests, feature requests and bug reports, please open a ticket.
- Drop by the Gitter channel and talk to me (jastice), and I will drop by.
- When your issue is resolved, update the wiki troubleshooting page!
Also, follow me on twitter: @ebenwert
Source and Continuous Integration
Gringotts is open source. View, fork and edit on Github
CI Status:
Current Development builds
Automatic Release builds
CI Builds have not been review by BukkitDev staff. Install at your own risk, just like anything else from the internet.
@ebenwert
I was going to fork from your github and take a look myself but it looks like you might have not committed all your changes for 2.0beta4.
EDIT: Derp. Looks like I just didn't realize 2.0beta4 has code that was in commits from late March. I thought that was stuff from the previous beta. Sorry. :P
@KittyTristy
Thanks, I'll check that out tomorrow.
I'm using 2.0beta4 and now region vaults are not working.
@ebenwert
Bukkit-1.5.1-R0.1-21-g49b0699-b2754jnks Gringotts 1.5.1a
I havent updated to new bukkit/minecraft server because LWC hasnt been updated yet to prevent hoppers from emptying chests.
@PAL18
What version of Gringotts and CraftBukkit does this happen with?
Gringotts is generating errors when other plugins try to charge the user (in this particular case HomeSpawnPlus):
java.lang.NullPointerException at org.bukkit.Location.getBlock(Location.java:82) at org.gestern.gringotts.DAO.getChests(DAO.java:344) at org.gestern.gringotts.GringottsAccount.balance(GringottsAccount.java:39) at org.gestern.gringotts.api.impl.GringottsEco$ValidAccount.balance(GringottsEco.java:221) at org.gestern.gringotts.api.impl.VaultConnector.getBalance(VaultConnector.java:72) at org.morganm.homespawnplus.command.BaseCommand.costCheck(BaseCommand.java:218) at org.morganm.homespawnplus.command.BaseCommand.applyCost(BaseCommand.java:261) at org.morganm.homespawnplus.commands.Home.doHomeTeleport(Home.java:206) at org.morganm.homespawnplus.commands.Home.execute(Home.java:183) at org.morganm.homespawnplus.command.BaseCommand.onCommand(BaseCommand.java:132) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
@ebenwert
Thanks a lot! Feel free to PM me; I would love to help you beta test it.
@BlueFusion95
Yes, I might have a little time this week to do another beta release :) It will use the Bukkit DB API, so if you configure that to use MySQL, it will use that as DB instead of the default SQLite.
However, it won't help with linking accounts between servers, as Gringotts requires access to the "physical" chests to count an account's balance.
Is there any chance we will see MySQL support soon? My server is beginning to have serious issues with the current database setup, preventing players from even creating vaults and using the core features of this plugin. Also I am hoping to soon move to a server network setup and MySQL would allow me to link accounts between servers.
Thanks,
BlueFusion12
Thank you so much for this plugin! Never stop updating it!
@zedadiaswick
Okay, thanks. Hopefully that problem will be solved with the next version, which uses the built-in db from craftbukkit. I still can't say when I have time for releasing that yet.
@ebenwert
Ah, okay then.
On shut down Gringotts seemed to take several minutes between the Derby shutdown message, and the Gringotts disabled message. I was experiencing some major lag prior to the shut down which may have caused it, but just wanted to report that here in case there was something else going on as Gringotts was the only plugin which took a significant period of time to disable.
@zedadiaswick
That is just a minor bug.. I forgot to upgrade the version number.
Version 1.5.2 reports itself as being version 1.5.1a with /version gringotts - Is this a bug, or is the download for 1.5.2 actually 1.5.1a?
@ebenwert
I pulled up a local server and tested both spigot and craftbukkit; both work without the error. Does this mean my database might be corrupted?
@BlueFusion95
Thanks for the report. Could you please check if this also happens with regular CraftBukkit, since it seems you are using Spigot?
@ebenwert
Thanks mate, I found shopkeeper actually, I'm trying to stay true to an item based economy. Vault so far is only needed for buying land on our server.
Im getting this when trying to create a vault:
Happens on both the newest beta and 1.5.2
@KittyTristy
Ok thanks for the info, will try it now ^_^
EDIT: Just tried it and I can indeed create other users a vault. They have to be online, but then I saw a few comments down that was the case.
Thanks once again for the help guys.
@SniperTeamTango
All you need is Vault (the plugin), and it should work with the shop plugin of your choice.