GemsEconomy
4.9.2This is a custom multi-currency economy plugin! Free & Open Sourced! With vault support
4.9.2latestMySQL bug fixes and big changesJan 2, 2021 Please read the entire change log! This version is well tested and should not be bugged at all! Code (Text): /** * * MySQL would not write or read any data from database - Fixed (Some help from @FurryKitten @ github) * Rewritten many parts of loading / saving account data in MySQL. * YAML Storage would cache offline users when adding currency to them - Fixed * Balance Top command has been rewritten to support more efficient SQL queries. * Balance Top cache expiry lowered to 3 minutes from 5. * Added an option to enable/disable cheques in config. * There has also been many internal changes here and there. * * SQLITE Support has been dropped! IF this is relevant for you! * Please change your backend to YAML with the command /currency convert yaml * Before you update of course! * * THIS UPDATE MODIFIES HOW A PLAYERS BALANCE IS SAVED, ONLY RELEVANT FOR MYSQL USERS! * Please take a backup of your balances table before you start your server * with this new version of GemsEconomy! * The plugin will automatically update the old tables to the new format. * When players log in their data will be converted automatically. * IF you are using /baltop command a lot, the baltop might become * inaccurate due to the players need to log on your server before it can read their balances. * * Please let me know if you find bugs! * PM me here @ SpigotMC * */4.9.11.16.4 support and bug fixesDec 23, 2020 https://api.extendedclip.com/expansions/gemseconomy/versi… Code (Text): /** * Supports 1.16.4 now! * Bugs fixed: * The first currency you create was not set to default. This is now fixed * * HikariCP updated to 3.4.5 * PlaceholderAPI expansion is also fixed! * I provided a link to download manually if it's not available yet. * * Please let me know if you find bugs! * PM me here at spigot! * */4.91.16 support + Bug fixesSep 1, 2020 * Changes: * Cheque validation has been changed. Due to this, all current cheques on your server will no longer be valid. * Boosted MySql Performance a bit! * Done a lot of clean up in the code. A lot more readable now * Fixed a possible bug that you could pay yourself somehow? * Added 1.16 support This update was completed over a year ago but just not released. Therefore I don't know if I've forgot something. But I added NMSVer for 1.16!4.8.3Syncing Issue Bug FixJul 13, 2019 The syncing issue between servers should be no more now! I've carefully tested this both with offline and online. It seems to work flawlessly4.8.2Bungee SyncingJul 8, 2019 Hey! This update fixes the issue where a player would have more or less money on another server than they are playing on. In other words "same currency, different server, different balance" is fixed. But! Due to the limitations of the Bungee-Bukkit plugin messaging channels if there is no players on the other server that needs updating, it won't be updated either.4.8.1Bug fixJun 9, 2019 · Fixed the async event bug on /eco set4.81.14 Support + Bug FixesJun 8, 2019 Changes: * Fixed the Cache, I made a cache for accounts but didn't actually use it. So this would bring a performance boost regarding account lookups. (Data reading) * Fixed a money dupe bug when a player joins first time, receives money and can pay infinite until they rejoin. This update fixes the async event bug! * Added support for 1.14! * Please let me know if you find bugs! * PM me or contact me on discord!4.7.5Trying to fix mysql timeouts.Mar 9, 2019 This a version that might fix the problem in previous versions.4.7.4Mysql bug fixMar 1, 2019 I have not tested this version myself due to the time it takes to test this bug: Database is not connected! This happens when the server is left on for hours and hours and can happen after a while. Let me know if this version does not fix this.4.7.3Small update + 1 new commandFeb 5, 2019 Added: · /currency backend <mysql,yaml,sqlite> - This command allows you to change the current backend, this does not convert the data from the old to the new. · New messages to the command above, you can find them here, they are pointed out with an arrow. It is 2 new messages. Code (Text): # GemsEconomy # Version: 4.7.3 # GemsEconomy Main Configuration file. # Developer(s): [Xanium] # # You have three valid storage methods, yaml, mysql or sqlite. If you choose mysql you would have to enter the database credentials down below. # All messages below are configurable, I hope you use them because it took 1 hour to make all of them into the plugin and configurable. storage: YAML debug: false vault: true transaction_log: true mysql: database: gemseconomy tableprefix: ge host: localhost port: 3306 username: username password: password sqlite: file: database.sqlite cheque: material: PAPER name: '&aBank Note' lore: - '&7Worth: {value}.' - '&7&oWritten by {player}' console_name: Console Messages: prefix: '&2&lGemsEconomy> ' nopermission: '&7You don''t have permission to do this.' noconsole: '&7Console cannot do this.' invalidamount: '&7Not a valid amount.' invalidpage: '&7Not a valid page number.' pay_yourself: '&7You can''t pay yourself.' player_is_null: '&7The specified player does not exist.' unknownCurrency: '&7Unknown Currency.' unknownCommand: '&7Unknown sub-command.' noDefaultCurrency: '&7No default currency.' currencyExists: '&7Currency already exists.' accountMissing: '&7Your account is missing. Please relog the server.' cannotReceiveMoney: '&a{player}&7 can''t receive money.' insufficientFunds: '&7You don''t have enough {currencycolor}{currency}&7!' targetInsufficientFunds: '&e{target} &7don''t have enough {currencycolor}{currency}&7!' paid: '&7You were paid {currencycolor}{amount} &7from &a{player}&7.' payer: '&7You paid {currencycolor}{amount} &7to &a{player}&7.' payNoPermission: '&7You don''t have permission to pay {currencycolor}{currency}&7.' currencyNotPayable: '{currencycolor}{currency} &7is not payable.' add: '&7You gave &a{player}&7: {currencycolor}{amount}. ' take: '&7You took {currencycolor}{amount} &7from &a{player}&7.' set: '&7You set &a{player}&7''s balance to {currencycolor}{amount}&7.' exchange_rate_set: '&7Set the exchange rate for {currencycolor}{currency} &7to &a{amount}&7.' exchange_success_custom_other: '&7Successfully exchanged {currencycolor}({currEx}) &7for {currencycolor2}{receivedCurr}&7 to player {player}&7.' exchange_success_custom: '&7Successfully exchanged {currencycolor}({currEx}) &7for {currencycolor2}{receivedCurr}&7.' exchange_success: '&7Successfully exchanged {currencycolor}{ex_curr} &7for equivalent value in {currencycolor2}{re_curr}&7.' exchange_command: no_perms: preset: '&7You don''t have permission to exchange currencies with a preset rate.' custom: '&7You don''t have permission to exchange currencies with a custom rate.' balance: current: '&a{player}&7''s balance is: {currencycolor}{balance}' multiple: '&a{player}&7''s balances:' list: '&a&l>> {currencycolor}{format}' none: '&7No balances to show for &c{player}&7.' balance_top: balance: '&a&l-> {number}. {currencycolor}{player} &7- {currencycolor}{balance}' header: '&f----- {currencycolor} Top Balances for {currencyplural} &7(Page {page})&f -----' empty: '&7No accounts to display.' next: '{currencycolor}/gbaltop {currencyplural} {page} &7for more.' nosupport: '&a{storage} &7doesn''t support /baltop.' cheque: success: '&7Cheque successfully written.' redeemed: '&7Cheque has been cashed in.' invalid: '&7This is not a valid cheque.' help: eco_command: - '{prefix}&e&lEconomy Help' - '&2&l>> &a/eco give <user> <amount> [currency] &8- &7Give a player an amount of a currency.' - '&2&l>> &a/eco take <user> <amount> [currency] &8- &7Take an amount of a currency from a player.' - '&2&l>> &a/eco set <user> <amount> [currency] &8- &7Set a players amount of a currency.' exchange_command: - '{prefix}&b&lExchange Help' - '&2&l>> &a/exchange <account> <currency_to_exchange> <amount> <currency_to_receive> <amount> &8- &7Exchange between currencies with a custom rate for an account.' - '&2&l>> &a/exchange <currency_to_exchange> <amount> <currency_to_receive> <amount> &8- &7Exchange between currencies with a custom rate.' - '&2&l>> &a/exchange <currency_to_exchange> <amount> <currency_to_receive> &8- &7Exchange with a pre-set exchange rate.' cheque_command: - '{prefix}&e&lCheque Help' - '&2&l>> &a/cheque write <amount> [currency] &8- &7Write a cheque with a specified amount and currency.' - '&2&l>> &a/cheque redeem &8- &7Redeem the cheque.' currency_command: - '{prefix}&e&lCurrency Help' - '&2&l>> &a/currency create <singular> <plural> &8- &7Create a currency.' - '&2&l>> &a/currency delete <plural> &8- &7Delete a currency.' - '&2&l>> &a/currency convert <method> &8- &7Convert storage method. WARN: Take backups first and make sure the storage you are switching to is empty!' --> - '&2&l>> &a/currency backend <method> &8- &7Switch backend. This does not convert.' - '&2&l>> &a/currency view <plural> &8- &7View information about a currency.' - '&2&l>> &a/currency list &8- &7List of currencies.' - '&2&l>> &a/currency symbol <plural> <char|remove> &8- &7Select a symbol for a currency or remove it.' - '&2&l>> &a/currency color <plural> <color> &8- &7Select a color for a currency.' - '&2&l>> &a/currency colorlist &8- &7List of Colors.' - '&2&l>> &a/currency decimals <plural> &8- &7Enable decimals for a currency.' - '&2&l>> &a/currency payable <plural> &8- &7Set a currency payable or not.' - '&2&l>> &a/currency default <plural> &8- &7Set a currency as default.' - '&2&l>> &a/currency startbal <plural> <amount> &8- &7Set the starting balance for a currency.' - '&2&l>> &a/currency setrate <plural> <amount> &8- &7Sets the currency''s exchange rate.' usage: pay_command: '&2&l>> &a/pay <user> <amount> [currency] &8- &7Pay the specified user the specified amount.' give_command: '&2&l>> &a/eco give <user> <amount> [currency] &8- &7Give a player an amount of a currency.' take_command: '&2&l>> &a/eco take <user> <amount> [currency] &8- &7Take an amount of a currency from a player.' set_command: '&2&l>> &a/eco set <user> <amount> [currency] &8- &7Set a players amount of a currency.' currency_create: '&2&l>> &a/currency create <singular> <plural> &8- &7Create a currency.' currency_delete: '&2&l>> &a/currency delete <plural> &8- &7Delete a currency.' currency_convert: '&2&l>> &a/currency convert <method> &8- &7Convert storage method. WARN: Take backups first and make sure the storage you are switching to is empty!' --> currency_backend: '&2&l>> &a/currency backend <method> &8- &7Switch backend. This does not convert.' currency_view: '&2&l>> &a4.7.2Security updateJan 27, 2019 This small change makes that account creation happens later than the previous version because of anti bot plugins. This change is made because i had reports of this plugin crashing servers when they were bot attacked. So now it should not make any account unless the "player entity" is fully logged in. Please let me know if this version breaks your server. I've tested it carefully but it worked fine for me.4.7.1Tiny Messages fixJan 21, 2019 I've derped the unknown sub command message. Its now fixed and the plugin should work perfectly.4.7Event API updateJan 20, 2019 I've added 3 events that can be used as an api. · GemsTransactionEvent · GemsPayEvent · GemsConversionEvent Remember to regenerate your config file if you haven't done that when you updated to version 4.64.6Exchange, Logging Update with bug fixes!Jan 14, 2019 Whats been done: - Removed migration system from version 3.2.1 - Found unnecessary data saving, removed it, should be some what faster now. - Commands have been renamed, still works with the old names as aliases. I've made this change because i think this plugin is worthy of overriding other "eco" plugins. You should not need any other when you got this. - Fixed bugs regarding data storing conversions that made the account data not save. - MySQL Data store backend is now HikariCP. (A lot better performance) - New logging system. A lot more understandable log files! - New Exchange and Conversion between currency rates system. Sorry for this being delayed so many times. - You can now use underscores (___) in currency singular and plural to make the plugin format the name as this: US Dollar (When you actually typed in this to create the currency: US_Dollar) - Logging is now enabled by default - New messages in the config file you might want to backup your old one and let it generate a new one! - New permissions regarding exchange command! ( gemseconomy.command.exchange.preset, gemseconomy.command.exchange.custom & gemseconomy.command.exchange.custom.other)4.5New storage method & bug fixesDec 1, 2018 Hey! I've added another storage method and that is SQLite some people requested this and I've added it in this version. I've fixed the cheques part which was totally broken and now I haven't found a bug yet with an hour of testing different things with it. What was broken with it: · If you had more than 1 cheque stacked you had infinite money. · You could write cheques that you did not have the money to pay for. · Basicly really broken xD I also updated the cheque lore. The convert command has been changed aswell so you can now convert between yaml, sqlite and mysql. WARN: Please delete the prior gemseconomy tables in the sqlite or mysql database before you convert!4.4.2Tiny message fix for baltop commandNov 23, 2018 Fixed a issue with the baltop command regarding double currency symbol which looks weird. Please remove this variable from the config.yml: Code (Text): balance_top: balance: '&a&l-> {number}. {currencycolor}{player} &7- {currencycolor}{currencysymbol}{balance}' change to this or what you have but just remove the {currencysymbol} variable balance_top: balance: '&a&l-> {number}. {currencycolor}{player} &7- {currencycolor}{balance}'4.4.1Bug Fix for version 4.4Nov 10, 2018 Fixed: · Vault Compatibility adding money when it should remove money. · Exchange Rate not found when loading currencies. This feature is delayed until I can get it working right.4.41.13 Support & Bug FixesNov 9, 2018 It has been a while since I last updated GemsEconomy but I've finally managed to get myself to do it. There is some features that are in the plugin now but not enabled due to some problems I found but it is working as it should with MySQL and YML storage methods. · 1.13 Support has been added · A bug that makes a players balance -1 with mysql has been corrected. · New features are coming soon! Please! Report! Bugs! You can do so by private messaging or send me a message on discord. Do Not use the review section for this.4.3.3Very small update!Aug 2, 2018 This small update adds an check to make sure the default currency is not null in the pay command. This has been added due to many people complaining about the command doesn't work, when in reality they have not created a currency.4.3.2Added a messageJul 8, 2018 Added a message to the pay command.4.3.1Small Message Bug fixJul 1, 2018 This update fixes the balance top command.4.3Jun 15, 2018 4.2GemsEconomy API Update!Jun 1, 2018 I've added a basic API for GemsEconomy. Please read the API section of the main page.4.1May 30, 2018 4.0May 6, 2018 3.2.1Small fixApr 14, 2018 · Fixed /balance <player>3.2Bug Fix UpdateApr 12, 2018 Bug Fixes: · Fixed players not keeping their money after a world reset. · Removed offline player support, by this i mean using the class "OfflinePlayer". I've created something myself that is faster and better. · Removed alias "/bal" for BalanceCommand.3.1Incompatibility issueMar 14, 2018 · You can now change the table name for storing the accounts in the mysql database. · Added an advanced option to set how much the max connection pool size can be. (MySQL)3.0Major GemsEconomy UpdateMar 2, 2018 What's been done: · Updated compiler versions · Updated Hikari. · Added built-in Vault support, this can be enabled in the config file. It is disabled by default. · Added Update checker, do not worry! This won't spam your ingame chat. It will only print a message in the console when the plugin is loading. · Added Metrics, just because I am curious over how many servers is running this plugin. Note: The custom vault version is no longer needed, please if you used it, add the original vault version back in case of inconsistencies between them.2.6Vault Update!Feb 8, 2018 · This version has full support for Vault, may contain bugs with some plugins. Please report to me if you find an error between GemsEconomy and Vault when a plugin calls something. · You need to use the vault jar file supplied from this download if you want vault support. · (Vault) Updated vault to newest minecraft version. Should still work for all other versions. · (Vault) Dropped support for perms plugin DroxPerms, due to it being outdated and super old. · Aliases added! Commands have been renamed. · Offline support! · I have tested this bridge offline and online, found 0 bugs, it should work perfectly. If not please report to me by PM. As I said, there might be bugs with some plugins. Please report it to me straight away, so I can fix it. Enjoy the update.2.5.6Fix for previous updateJan 1, 2018 Last update didn't fix the issue for some people. But now it would for everyone hopefully. NOTICE! Never delete userdata file "loggedPlayers.yml" then everyone who logs in will receive the default amount again. This is only for people who use flatfile/yml.2.5.5Bug FixDec 31, 2017 Fixed: · You could not set default starting balance while using flatfile/yml2.5.4Small update with more AliasesSep 26, 2017 Alias Update: /balance -> /bal, /gembal, /gemsbalance, /gemsbal /eco -> /economy, /geco, /gemeco, /gemseconomy /pay -> /gpay, /gemspay, /gempay /cheque -> /banknote, /note, /gnote, /gemcheque, /gemscheque2.5.3Small updateSep 11, 2017 Added: · A setting in the config to disable cheques on versions lower than 1.9. The reason for why I added this is because you will get a lot error spam in your console if you don't disable this.2.5.2Bug Fix with MVdW PlaceholdersAug 29, 2017 Fixed: · A bug which didn't correctly load the balance into the cache used inside GemsEconomy. Now it load the information instantly and the error with for example featherboard will not happen again hopefully.2.5.1Another fix for the cheque bug.Jul 27, 2017 The cheque bug, might be fixed. I personally don't know since i can replicate this.2.5Bug fix + New featureJul 27, 2017 Added: · Ability to set the starting balance. Fixed: · A NPE being trigger when you simply right click anything.2.4Bug FixesJul 26, 2017 Fixed: · When having an item with both a custom displayname and lore, it would trigger the cheque listener.2.3Placeholder and Cheques Update!Jul 18, 2017 In this update the placeholders have been redone, I've made an expansion you will find in the expansion cloud in placeholderapi. The updated placeholders is available on the main page. Added: · Cheques has been added. Now you can write a cheque and give it away or require a payment for it. Might be good for events. Removed: · Old placeholder system. Now you would have to download the expansion ingame. /papi ecloud download GemsEconomy · The placeholders have changed.2.2Bug fixJul 16, 2017 Fixed: · That you could not use clips placeholder when not using mysql.2.1API update!Jun 13, 2017 Added: · An API to modify the balance of an player.2.0Recode!Jun 11, 2017 Huge update! · I have recoded the plugin from scratch with new and better solutions for almost everything, especially mysql. · The developer API is coming soon. · Permissions have changed. · Commands have changed. · Much better performance. · Support for MVdW's PlaceholderAPI is dropped, you can use the placeholder {placeholderapi_gemseconomy_gems} in MVdW Software, aslong as you have Clip's PlaceholderAPI installed. Sadly the plugin is no longer open source. It's now under All Rights Reserved.1.1Minecraft 1.11 Support.Nov 17, 2016 This plugin now supports 1.11! I have added some checks here and there for some reason you would get under 0 gems, if it does, it will reset to 0. The packages has been renamed for those who does use the API. Due to that I do no longer have the domain minecoremc.com. New names = me.JohnCrafted.gemseconomy.*1.0MySQL Update!Sep 12, 2016 I've finally got down to adding mysql support for this plugin! I suspect there may be some bugs so please report them to me! I have also redone the commands a bit. Read through the config file! There is some critical information there. Take a backup of your config.yml first! (Just in case) New permissions: - gemseconomy.command.balance.other - Allowing people to see other players balances. - gemseconomy.command.pay - Allows people to pay each other.0.2Messaging & Bug Fix, Read Update LogApr 10, 2016 Hello, It is a long time since I updated GemsEconomy and I decided to add something you might like. Added: - Being able to edit messages fully. (Color Support) - More Utils for devs. (API). - An option to register an account for a player when he/her joins. If he/her don't have one. Fixed: - Not being able to pay anyone. - Config reset bug. Edited: - Class Converter renamed to "UUIDConverter" - MathConverter methods are found in "UtilMath".0.1.0Mar 7, 2016
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta