NOTICE: DabCore now works with cauldron, which means so does this plugin head over here for more info
Also this plugin is even easier to customize! Using my new pluginEditor you can edit the configuration files in game and just do /bank reload!
Note: When updating, please stop your server before uploading the updated plugin, then start it again, otherwise banks wont save
This plugin adds an awesome bank system to your server. It can store items, money, and exp which can be transferred over servers via MySQL or saved to your files using compression methods to keep the save files very small. Has both money/exp interest, and is highly configurable.
NEW: Slot permissions use bank.slots.<i>
NEW: Players can set tab items:
Youtube Video by DiamondRushXD:
Youtube Video by LBEGaming:
Heaps of Features, even more coming! Please comment/review to request a Feature.
All messages/item names/most item lore can be customized in the /bank/language.yml and /bank/items.yml so you are able to customize everything to your needs.
User contributed translations of the language.yml can be found here, feel free to send your own language translations so I can put them on here
Thanks to everyone for the translations
Portuguese by @MarcoG
Chinese by @Apple_Sa
French by @Ziel
French (old) by @Lunatik934
German by @X00LA
German(old) by @X00LA
When using special chars like à surround the whole line with '' eg:
EXAMPLE: 'Exàmple'
And save the file as UTF-8 (in notepad++ encoding menu/encode in UTF-8)
This plugin saves either to File or MySQL. All item information like custom names, lore, enchantments, attributes and unbreakable tag's are all saved as well so no need to worry about that.
File:
For File it will create 2 files per players under /plugins/Bank/players/banks/<uuid>.bank and /plugins/Bank/players/config/<uuid>.yml the .bank file stores all the players items and the yml stores the players bank size. I use a bank file because I save the Items just like how minecraft saves them which is very compressed and results in a very small file even if you have hundreds of items. It will also create a usernames.db which will store past usernames/uuids so that you can open players Banks when they are offline.
MySQL:
For MySQL it will create 2 tables in your MySQL database bankplayers and usernames, bankplayers will store their info and usernames will store past usernames/uuids so that you can open players Banks when they are offline.
The MySQL lock system works like this. A player joins a server via bungee-cord, it creates the info in the database for them and locks them in it. When the player connects to a different server via the bungee-cord, they connect to the other server before the last can save. So on the new server it will see the player in locked and wont load anything. Once the server they left finishes saving it will then unlock the player. When the player tries to open the bank it will see that it is unlocked and will then load the player and lock them. If for some reason they are locked and shouldn't be, if it has been more than 10 seconds it will automatically unlock and load the player.
Converting:
To convert savetype's go into the config.yml set Convert to true, make sure the mysql.yml is correct and reload/restart the server.
When converting it will kick everyone and start converting, it will display in console how far through converting it is.
GUI:
Pin:
Main:
This is what opens when doing '/bank open' or opening from villager etc.
1. Opens Pin Options interface
2. Opens Balance interface
3. Opens Bank interface
4. Opens Exp interface
Pin Options:
1. Goes back to the main
2. Set your pin
3. Remove your pin
Balance:
1. Goes back to main
2. Withdraw all
3. Withdraw x (type amount into chat)
4. Current balance
5. Deposit x (type amount into chat)
6. Deposit all
Bank:
1. Current tab
2. Other tabs
3. Goes back to main
4. Slots/Opens Slots interface
5. Opens Add interface
6. Opens Remove interface
7. Opens Sort interface
8. Scrolls up the tab
9. Scrolls down the tab
10. Items in the tab
Slots:
1. Goes back to Bank
2. Minus
3. Buy slots
4. Plus
Add:
1. Goes back to Bank
2. Add All
3. Add Inventory
4. Add Hotbar
Remove:
1. Goes back to Bank
2. Remove All
3. Remove Inventory
4. Remove Hotbar
Sort:
1. Goes back to Bank
2. Sort by material
3. Sort by item name
4. sort by amount
Exp:
1. Goes back to main
2. Withdraw all
3. Withdraw x (type amount into chat)
4. Current exp
5. Deposit x (type amount into chat)
6. Deposit all
Money/Exp interest:
Players can earn interest on their Money/Exp deposits, interest rates can be set in config.
Note:
I am unable implement MySQL Interest is because each server would be able to give online interest to its players, but then would give offline interest to all others which wouldn't work cause then it would give offline interest to players on other servers.
Slots:
There are 4 ways players get slots.
When player first join the server they get the default amount set in config.
If enabled players are able to buy slots from the gui.
Slots can be given by commands.
Slots can also be given by permissions bank.slots.<i>
This plugin requires my core plugin DabCore
Normal Setup:
1. Download the plugin and drop it into your plugins folder.
2. Restart your server and your good to go
MYSQL Setup:
1. Download the plugin and drop it into your plugins folder.
2. Restart your server
3. Edit the config.yml SaveType to "MYSQL"
4. Edit the mysql.yml to your MySQL information
5. Restart your server again
(Note: Depending on how big the bank sizes are and how many items are in them, with mysql it may take a while to save the bank, please consider this when setting the default slots and max slots in the config.yml)
Entities:
Install citizens (then run the command '/bank add citizen <name> [type]').
Chests:
Run the command '/bank add chest' and click on a chest to make it into a bank chest.
Signs:
Put down a sign and put [bank] on the first line and it will become a sign that you can click and open your bank.
Converters:
This plugin can convert information from other plugins to this one:
How to enable it:
1. Download the latest version
2. Stop your server
3. You can either remove the Bankcraft jar or leave it. But make sure you leave the Bankcraft files!
4. Add the latest Bank.jar to your server
5. Start your server
6. Go to /plugins/Bank/config.yml
7. Edit "Converters.Bankcraft.Enabled" to true
8. Restart/Reload your server
How to enable
1. Download the latest version
2. Stop your server
3. You can either remove the ChestBank jar or leave it. But make sure you leave the ChestBank files!
4. Add the latest Bank.jar to your server
5. Start your server
6. Go to /plugins/Bank/config.yml
7. Edit "Converters.ChestBank.Enabled" to true
8. Restart/Reload your server
Post a request on the discussion page for other converters.
/bank add chest | Turns on chest adding mode (click a chest to make it a bank) | Permission: bank.add
/bank add citizen <name> [type] | Spawns a banker of [type] where you stand (Requires Citizens) | Permission: bank.add
/bank add entity | Spawns a villager banker where you stand (Requires CustomEntitiesAPI)| Permission: bank.add
/bank admin open <player> [disable:true/false] | Opens <player> Bank, disable is whether or not to disable the player access to the Bank whilst you are in it.| Permission: bank.admin
/bank admin openu <uuid> [disable:true/false] | Opens <uuid> Bank, disable is whether or not to disable the player access to the Bank whilst you are in it.| Permission: bank.admin
/bank exp view | View Bank Exp | Permission: bank.exp
/bank exp deposit <amount> | Deposit's <amount> exp into your bank | Permission: bank.exp
/bank exp withdraw <amount> | Withdraws <amount> exp from your bank | Permission: bank.exp
/bank lock <player> <true/false> | Un/Locks <player> (mysql only) | Permission: bank.lock
/bank money balance | View Bank Balance | Permission: bank.money
/bank money deposit <amount> | Deposit's <amount> into your bank | Permission: bank.money
/bank money withdraw <amount> | Withdraw's <amount> from your bank | Permission: bank.money
/bank open | Opens your bank | Permission: bank.open
/bank pin reset <player> | Resets <player> pin | Permission: bank.pin
/bank reload | Reloads the plugin | Permission: bank.reload
/bank remove chest | Turns on chest removing mode (click a bank chest to remove it as a bank) | Permission: bank.remove
/bank remove entity | Turns on entity removing mode (click a villager banker to remove it as a bank) | Permission: bank.remove
/bank slots add <player> <amount> | Gives <player> <amount> of slots | Permission: bank.slots
/bank slots remove <player> <amount> | Removes from <player> <amount> of slots | Permission: bank.slots
/bank slots set <player> <amount> | Sets <player> slots to <amount> | Permission: bank.slots
/bank slots reset <player> | Resets <player> slots | Permission bank.slots
/bank slots resetall | Resets all player slots | Permission bank.slots
/bank update <player> | Update players permission slots | Permission: bank.update
Permissions:
To place signs: bank.signs.place
To use signs: bank.open.sign
To use NPC/Entity: bank.open.entity
To use chest: bank.open.chest
Slots Permissions up to 1000: bank.slots.<i>
Code (Text):
# SaveType: Either File or MySQL
SaveType: File
# The command used in the plugin
Command: bank
# Disabled Worlds
Disabled_Worlds:
- Example1
- Example2
# Slot options
Slots:
# The default amount of slots given to players
Default_Slots: 50
# Maximum amount of slots players are able to buy
Max_Buy_Slots: 300
# Allow buying of slots
Sell: true
# Cost per slot
Slot_Cost: 1.0
# Converters
Converters:
# Bankcraft from bukkit.org
Bankcraft:
# Whether the converter is enabled or not
Enabled: false
# ChestBank from bukkit.org
ChestBank:
# Whether the converter is enabled or not
Enabled: false
# Money options
Money:
# Whether money is enabled or not
Enabled: true
# Maximum amount of money, by default it is the maximum double in java
Max: 1.7976931348623157E308
# Enable interest, doesn't work with MySQL
Interest_Enabled: false
# % Gained whilst online 1.0 is 100%
Percent_Gained_Online: 0.01
# % Gained whilst offline 1.0 is 100%
Percent_Gained_Offline: 0.001
# The interval in seconds to give interest
Interest_Timer: 1800
# This is set when the plugin is disabled so it remembers when to next give interest
Interest_Next: 0
# Enable Messages for when giving interest
Interest_Message_Enabled: false
# Exp options
Exp:
# Whether exp is enabled or not
Enabled: true
# Maximum amount of Exp, by default it is the maximum int in java
Max: 2.147483647E9
# Enable interest, doesn't work with MySQL
Interest_Enabled: false
# % Gained whilst online 1.0 is 100%
Percent_Gained_Online: 0.01
# % Gained whilst offline 1.0 is 100%
Percent_Gained_Offline: 0.001
# The interval in seconds to give interest
Interest_Timer: 1800
# This is set when the plugin is disabled so it remembers when to next give interest
Interest_Next: 0
# Enable Messages for when giving interest
Interest_Message_Enabled: false
# Pin options
Pin:
# Whether pin is enabled or not
Enabled: true
# Expire Options
Expire:
# Whether Expire is enabled or not
Enabled: true
# The amount of days a bank can be inactive for before deletion
Days: 30
#Death options
Death:
#Remove items on death
Lose_Items: false
#Remove money on death
Lose_Money: false
#Remove exp on death
Lose_Exp: false
# Enable debug messages in the plugin
Debug: false
Please request features in the discussion area and I will do my best to add them
* Loans
* Towny/Faction Bank
* Test server
* Exp/Money Conversion
* Add items to bank via command
Not doing unless someone has ideas on how to make them work:
* StackableItems support
By downloading/buying this plugin you agree to the following:
1. You will not -Redacted-/resell/forward/send this plugin to anyone for any reason
2. You will not get a refund under any circumstances
3. You may not decompile or attempt to look at the source code
4. This plugin may only be used on one server/network, unless you have a statement from me stating that you may use it on more
5. Any plugin made which uses this plugin must be made private or accessible free of charge or you must provide a statement from me stating you may charge for said plugin
Also this plugin is even easier to customize! Using my new pluginEditor you can edit the configuration files in game and just do /bank reload!
Note: When updating, please stop your server before uploading the updated plugin, then start it again, otherwise banks wont save
This plugin adds an awesome bank system to your server. It can store items, money, and exp which can be transferred over servers via MySQL or saved to your files using compression methods to keep the save files very small. Has both money/exp interest, and is highly configurable.
NEW: Slot permissions use bank.slots.<i>
NEW: Players can set tab items:
Youtube Video by DiamondRushXD:
Youtube Video by LBEGaming:
Heaps of Features, even more coming! Please comment/review to request a Feature.
All messages/item names/most item lore can be customized in the /bank/language.yml and /bank/items.yml so you are able to customize everything to your needs.
User contributed translations of the language.yml can be found here, feel free to send your own language translations so I can put them on here
Thanks to everyone for the translations
Portuguese by @MarcoG
Chinese by @Apple_Sa
French by @Ziel
French (old) by @Lunatik934
German by @X00LA
German(old) by @X00LA
When using special chars like à surround the whole line with '' eg:
EXAMPLE: 'Exàmple'
And save the file as UTF-8 (in notepad++ encoding menu/encode in UTF-8)
This plugin saves either to File or MySQL. All item information like custom names, lore, enchantments, attributes and unbreakable tag's are all saved as well so no need to worry about that.
File:
For File it will create 2 files per players under /plugins/Bank/players/banks/<uuid>.bank and /plugins/Bank/players/config/<uuid>.yml the .bank file stores all the players items and the yml stores the players bank size. I use a bank file because I save the Items just like how minecraft saves them which is very compressed and results in a very small file even if you have hundreds of items. It will also create a usernames.db which will store past usernames/uuids so that you can open players Banks when they are offline.
MySQL:
For MySQL it will create 2 tables in your MySQL database bankplayers and usernames, bankplayers will store their info and usernames will store past usernames/uuids so that you can open players Banks when they are offline.
The MySQL lock system works like this. A player joins a server via bungee-cord, it creates the info in the database for them and locks them in it. When the player connects to a different server via the bungee-cord, they connect to the other server before the last can save. So on the new server it will see the player in locked and wont load anything. Once the server they left finishes saving it will then unlock the player. When the player tries to open the bank it will see that it is unlocked and will then load the player and lock them. If for some reason they are locked and shouldn't be, if it has been more than 10 seconds it will automatically unlock and load the player.
Converting:
To convert savetype's go into the config.yml set Convert to true, make sure the mysql.yml is correct and reload/restart the server.
When converting it will kick everyone and start converting, it will display in console how far through converting it is.
GUI:
Pin:
Main:
This is what opens when doing '/bank open' or opening from villager etc.
1. Opens Pin Options interface
2. Opens Balance interface
3. Opens Bank interface
4. Opens Exp interface
Pin Options:
1. Goes back to the main
2. Set your pin
3. Remove your pin
Balance:
1. Goes back to main
2. Withdraw all
3. Withdraw x (type amount into chat)
4. Current balance
5. Deposit x (type amount into chat)
6. Deposit all
Bank:
1. Current tab
2. Other tabs
3. Goes back to main
4. Slots/Opens Slots interface
5. Opens Add interface
6. Opens Remove interface
7. Opens Sort interface
8. Scrolls up the tab
9. Scrolls down the tab
10. Items in the tab
Slots:
1. Goes back to Bank
2. Minus
3. Buy slots
4. Plus
Add:
1. Goes back to Bank
2. Add All
3. Add Inventory
4. Add Hotbar
Remove:
1. Goes back to Bank
2. Remove All
3. Remove Inventory
4. Remove Hotbar
Sort:
1. Goes back to Bank
2. Sort by material
3. Sort by item name
4. sort by amount
Exp:
1. Goes back to main
2. Withdraw all
3. Withdraw x (type amount into chat)
4. Current exp
5. Deposit x (type amount into chat)
6. Deposit all
Money/Exp interest:
Players can earn interest on their Money/Exp deposits, interest rates can be set in config.
Note:
I am unable implement MySQL Interest is because each server would be able to give online interest to its players, but then would give offline interest to all others which wouldn't work cause then it would give offline interest to players on other servers.
Slots:
There are 4 ways players get slots.
When player first join the server they get the default amount set in config.
If enabled players are able to buy slots from the gui.
Slots can be given by commands.
Slots can also be given by permissions bank.slots.<i>
This plugin requires my core plugin DabCore
Normal Setup:
1. Download the plugin and drop it into your plugins folder.
2. Restart your server and your good to go
MYSQL Setup:
1. Download the plugin and drop it into your plugins folder.
2. Restart your server
3. Edit the config.yml SaveType to "MYSQL"
4. Edit the mysql.yml to your MySQL information
5. Restart your server again
(Note: Depending on how big the bank sizes are and how many items are in them, with mysql it may take a while to save the bank, please consider this when setting the default slots and max slots in the config.yml)
Entities:
Install citizens (then run the command '/bank add citizen <name> [type]').
Chests:
Run the command '/bank add chest' and click on a chest to make it into a bank chest.
Signs:
Put down a sign and put [bank] on the first line and it will become a sign that you can click and open your bank.
Converters:
This plugin can convert information from other plugins to this one:
How to enable it:
1. Download the latest version
2. Stop your server
3. You can either remove the Bankcraft jar or leave it. But make sure you leave the Bankcraft files!
4. Add the latest Bank.jar to your server
5. Start your server
6. Go to /plugins/Bank/config.yml
7. Edit "Converters.Bankcraft.Enabled" to true
8. Restart/Reload your server
How to enable
1. Download the latest version
2. Stop your server
3. You can either remove the ChestBank jar or leave it. But make sure you leave the ChestBank files!
4. Add the latest Bank.jar to your server
5. Start your server
6. Go to /plugins/Bank/config.yml
7. Edit "Converters.ChestBank.Enabled" to true
8. Restart/Reload your server
Post a request on the discussion page for other converters.
/bank add chest | Turns on chest adding mode (click a chest to make it a bank) | Permission: bank.add
/bank add citizen <name> [type] | Spawns a banker of [type] where you stand (Requires Citizens) | Permission: bank.add
/bank add entity | Spawns a villager banker where you stand (Requires CustomEntitiesAPI)| Permission: bank.add
/bank admin open <player> [disable:true/false] | Opens <player> Bank, disable is whether or not to disable the player access to the Bank whilst you are in it.| Permission: bank.admin
/bank admin openu <uuid> [disable:true/false] | Opens <uuid> Bank, disable is whether or not to disable the player access to the Bank whilst you are in it.| Permission: bank.admin
/bank exp view | View Bank Exp | Permission: bank.exp
/bank exp deposit <amount> | Deposit's <amount> exp into your bank | Permission: bank.exp
/bank exp withdraw <amount> | Withdraws <amount> exp from your bank | Permission: bank.exp
/bank lock <player> <true/false> | Un/Locks <player> (mysql only) | Permission: bank.lock
/bank money balance | View Bank Balance | Permission: bank.money
/bank money deposit <amount> | Deposit's <amount> into your bank | Permission: bank.money
/bank money withdraw <amount> | Withdraw's <amount> from your bank | Permission: bank.money
/bank open | Opens your bank | Permission: bank.open
/bank pin reset <player> | Resets <player> pin | Permission: bank.pin
/bank reload | Reloads the plugin | Permission: bank.reload
/bank remove chest | Turns on chest removing mode (click a bank chest to remove it as a bank) | Permission: bank.remove
/bank remove entity | Turns on entity removing mode (click a villager banker to remove it as a bank) | Permission: bank.remove
/bank slots add <player> <amount> | Gives <player> <amount> of slots | Permission: bank.slots
/bank slots remove <player> <amount> | Removes from <player> <amount> of slots | Permission: bank.slots
/bank slots set <player> <amount> | Sets <player> slots to <amount> | Permission: bank.slots
/bank slots reset <player> | Resets <player> slots | Permission bank.slots
/bank slots resetall | Resets all player slots | Permission bank.slots
/bank update <player> | Update players permission slots | Permission: bank.update
Permissions:
To place signs: bank.signs.place
To use signs: bank.open.sign
To use NPC/Entity: bank.open.entity
To use chest: bank.open.chest
Slots Permissions up to 1000: bank.slots.<i>
Code (Text):
# SaveType: Either File or MySQL
SaveType: File
# The command used in the plugin
Command: bank
# Disabled Worlds
Disabled_Worlds:
- Example1
- Example2
# Slot options
Slots:
# The default amount of slots given to players
Default_Slots: 50
# Maximum amount of slots players are able to buy
Max_Buy_Slots: 300
# Allow buying of slots
Sell: true
# Cost per slot
Slot_Cost: 1.0
# Converters
Converters:
# Bankcraft from bukkit.org
Bankcraft:
# Whether the converter is enabled or not
Enabled: false
# ChestBank from bukkit.org
ChestBank:
# Whether the converter is enabled or not
Enabled: false
# Money options
Money:
# Whether money is enabled or not
Enabled: true
# Maximum amount of money, by default it is the maximum double in java
Max: 1.7976931348623157E308
# Enable interest, doesn't work with MySQL
Interest_Enabled: false
# % Gained whilst online 1.0 is 100%
Percent_Gained_Online: 0.01
# % Gained whilst offline 1.0 is 100%
Percent_Gained_Offline: 0.001
# The interval in seconds to give interest
Interest_Timer: 1800
# This is set when the plugin is disabled so it remembers when to next give interest
Interest_Next: 0
# Enable Messages for when giving interest
Interest_Message_Enabled: false
# Exp options
Exp:
# Whether exp is enabled or not
Enabled: true
# Maximum amount of Exp, by default it is the maximum int in java
Max: 2.147483647E9
# Enable interest, doesn't work with MySQL
Interest_Enabled: false
# % Gained whilst online 1.0 is 100%
Percent_Gained_Online: 0.01
# % Gained whilst offline 1.0 is 100%
Percent_Gained_Offline: 0.001
# The interval in seconds to give interest
Interest_Timer: 1800
# This is set when the plugin is disabled so it remembers when to next give interest
Interest_Next: 0
# Enable Messages for when giving interest
Interest_Message_Enabled: false
# Pin options
Pin:
# Whether pin is enabled or not
Enabled: true
# Expire Options
Expire:
# Whether Expire is enabled or not
Enabled: true
# The amount of days a bank can be inactive for before deletion
Days: 30
#Death options
Death:
#Remove items on death
Lose_Items: false
#Remove money on death
Lose_Money: false
#Remove exp on death
Lose_Exp: false
# Enable debug messages in the plugin
Debug: false
Please request features in the discussion area and I will do my best to add them
* Loans
* Towny/Faction Bank
* Test server
* Exp/Money Conversion
* Add items to bank via command
Not doing unless someone has ideas on how to make them work:
* StackableItems support
By downloading/buying this plugin you agree to the following:
1. You will not -Redacted-/resell/forward/send this plugin to anyone for any reason
2. You will not get a refund under any circumstances
3. You may not decompile or attempt to look at the source code
4. This plugin may only be used on one server/network, unless you have a statement from me stating that you may use it on more
5. Any plugin made which uses this plugin must be made private or accessible free of charge or you must provide a statement from me stating you may charge for said plugin