HyperConomy
Getting Started|Commands|Permissions|FAQ|How To|Troubleshooting
______________________________________________________________________________
Introduction
HyperConomy is the all in one economy and shop plugin. It can be a simple chest or sign shop plugin, a Vault compatible economy plugin, a region based shop plugin with many configurable options, or even a complex system of economically competing towns and kingdoms. Any vanilla Minecraft item can be traded in HyperConomy and virtually any custom item can be added as well. Prices can be configured to change dynamically or they can be set as desired. To quickly edit prices and settings you can double click on HyperConomy.jar to access the GUI editor. HyperConomy has many features including things such as item price linking and item displays. Read below or check out the wiki for more information.
New Chest Shops:
______________________________________________________________________________
Features
- Supports all standard Minecraft items. (fireworks, lore, books, maps, damaged items, etc.)
- Supports the addition of unlimited custom items.
- Integrated economy plugin.
- Player to player, player to shop, and shop to player trading.
- Dynamic pricing system based on a hyperbolic curve.
- Item price linking (price of recipe item is based on price of component items)
- Player owned shops and chest shops.
- Item frame shops.
- Showcase style item displays.
- Localization.
- GUI Editor for easy manipulation of price settings.
- Price floor, price ceiling, static pricing, initial pricing, sales tax, purchase tax, unlimited stock option and much more.
- Dynamic tax rates. (Rich players can be taxed more than poor ones.)
- Supports MySQL and SQLite.
- Allows the creation of an unlimited number of economies, which allows for economically competing towns, kingdoms, factions, or other groups.
- Supports command-free economies using transaction signs and chest shops.
- Price information, history, and more can be displayed on automatically updating information signs.
- Price update notifications for any or all items.
- Experience and enchantment trading.
- When a player enters and leaves a shop, HyperConomy displays a customizable message.
- Nearly everything can be changed while the server is running.
- Unwanted features can be disabled.
______________________________________________________________________________
Requirements
- None. If you'd like to integrate with an existing economy plugin using Vault, you will need the following: Vault and an economy plugin such as BOSEconomy, iConomy, or Essentials Economy
______________________________________________________________________________
Versions and Development Builds
- Recommended builds are marked with [RB] and are generally thought to be stable and bug free.
- Builds marked as [Beta] are as bug free as possible, but often have large code changes which may result in the appearance of new bugs.
- Builds marked as [Dev] are development builds that I've decided to upload to BukkitDev. I may upload dev builds on occasion to provide easy access because Bukkit staff does not allow linking to development builds.
- Development builds may contain bugs as I work on releasing a new [Beta] build. They may also contain fixes for bugs found in [Beta] builds. Use these builds if you're looking for a bug fix, or would like to try out a new feature I've just added. Also, feel free to search for bugs in the development builds. Any help with testing is greatly appreciated!
- Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
- The latest development builds can be found here.
______________________________________________________________________________
Add-ons
- HyperMerchant
HyperMerchant is a graphical user interface for your players to use to interact with HyperConomy shops.
It is also includes the ability to easily create Citizens npc shopkeepers for your HyperConomy shops. - HyperConomy Web
HyperConomy Web creates a web page for HyperConomy, displaying information about all shops, items, and price history. The web page appearance can be customized to fit your server.
______________________________________________________________________________
New Features, Bugs, Problems, etc.
- If you have a question, or find a bug, first check the FAQ. I will try to include as many helpful questions and answers as possible.
- If the FAQ doesn't help, don't hesitate to post your question or make a ticket.
- If you do find a bug, please include which version of HyperConomy you're using, the full error message or stack trace (if there is one), the version and type of Minecraft server you're running, and an explanation of how to reproduce the bug or what causes the bug.
______________________________________________________________________________
Donate
- If you'd like to send me a donation for the time and effort spent making this plugin, you can do so here: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=AMK9AR4CVKEJJ
- To those who have donated: thank you very much for the support. If you'd like to be listed as a donor here just send me a message.
______________________________________________________________________________
Donors
- pr4xt3roy -> CapricaTown
- Baamoink -> Mantle-Craft
- Thanks as well to all of the other donors that haven't requested a listing here.
______________________________________________________________________________
Basic Tutorial
New tutorial videos to come...
-
View User Profile
-
Send Message
Posted Mar 25, 2015@RegalOwl
Immediate question: What would it take to remove gold and diamond from the database for now?
In the future, it would be nice to allow a feature in the config to track gold and diamond trade and fluctuate, resetting bank's trade prices once a real earth day to the latest "market price" based on what's been traded at the bank that whole previous day, but disable from the market directly, with a minimum price for in case the admin switches between backed/market run economy. The gold can be infinite and diamond can be "once it's sold it's sold" so people have to be careful and keeps the money supply low (as diamond is very useful for other things, thus allowing items made with diamond to cost far more and give players capital gain). Then, if/when the world gets full or almost full (or whatever the admin wants) he can switch over to enabling gold/diamond for free trade on the market? The backed items should be configurable, too, doesn't have to be gold or diamond, could be lapis or nether quartz shards. This should be an option because early on, a physically backed economy is always a good economy. As the server/civilizations grow, a more flexible approach has to be attained, by switching to a full stock market allowing those once unattainable items to now be purchased back and effected by buying and selling, as the mineral wealth (to produce fiat wealth) will run dry, and the goal will no longer be allocation of the physical resource, but allocation of the fiat. That is the second step before entering a true credit based society (which is the step before a post-hunger society where money matters much less), which we don't have to address the credit based system yet, and never have to address post hunger on a Minecraft server (we will never have heal commands for the common folk for the most part).
It's been very difficult finding anyone to help work on making a stable economy. Having tried using multiple plugins to achieve this closed-flexible economy has been frustrating to say the least. I hate the idea of infinite money, but I do believe in the power of the "dollar" inflating and deflating based on how many users there are and how many players are spending. Of course at first the people will be wealthy. This is because for the most part, no one has enough to really sell that they aren't using. The way I sell and buy gold and diamond is using SignShop to make up for the lack of being able to trade, and it's infinite stock and infinite money. SignShop also allows a more functional capitalist economy on top of the free market economy, as they naturally compliment each other in practice and in ideology. This also allows for using things like SlimeFun and all the items in that to trade among each other if they are not in the stock market, merchandising is where the real money is at!
However the goal isn't to have a LOT of money (though a billion dollars or even 100 billion would be considered "top tier" in an extreme case), it's a race to have the MOST money of what is available! Regulating the amount of money helps keep prices low, so the dollar itself can flux. This is based on people's perception of how much money is available (and actually able to be traded, usually in 100's of cents, aka 0.01) vs the market cost (which may be lower than 0.01 cent). For example, even though the market price of cobblestone is worth 0.00001, but the players can sell it for 1 at 0.01. In this way, he has more economic power, because he got his money from what is available in the fiat money pool, allowing him to sell other, more expensive things lower if his cobblestone sells well, helping him compete with the market even. The perception of the people with less money will notice the drastic change if someone is monopolizing and this is where you came in with the "progressive tax" system, where rich people will pay higher taxes, good thing you put that in there! :)
Like any commodity, the dollar loses power (value) the more of them there are, therefore all the mineral wealth will possibly cause inflation, BUT if the server moderately grows and somehow people are prevented from mining gold/diamond if it isn't on their territory (by whatever means, Towny, Factions, etc) this can be kept to an even more well-regulated economy. You could even have an algorithm or block of code that determines how much land is owned vs how much money there "might be" based on the gold/diamond ore spread on that, and once the total money actually made is equal to how much gold there should be, it switches over to the stock market. As more and more land is claimed, it could switch back to the physical backed method where gold/diamond is disabled in market but trade-able at bank, using the last set price from market, or reset to minimum price if market price is below that.
Another thing to do is to make the stock prices will blanket fluctuate with the overall money supply. This way, early on, it will be more of a barter system, and "coinage" will be more valuable, even allowing for using Gold-Shop plugin as a means of trade as well, but usually very early on, and later it may not even be useful at all. Of course this can be done by charging extremely low prices or market prices (again, early on the money supply will be so low the money won't matter as much as the items, thus trade chests start becoming more useful, if you can find a way to keep at least one of the items you're trading in the chest).
To keep the dollar powerful, the supply must be kept low, and stimulated here and there. The best way to do this is taxation, then using that taxation as a means of doing various things, such as providing X% of taxes to back the stock market's money stock (this will likely be the most percentage of sales tax), X% running a lottery, and if someone wins they win a pot (or divide the pot if others win the same) among other ways of dividing taxes. Another way to do taxes, is give some to a Jobs account, so Jobs plugins can maybe be set to pay out from that account, encouraging people to do their jobs, then stop paying once the money is dry. The goal of course is to keep trade active and the money supply flowing.
Also to mention your progressive tax system again (rich pay more) I have to say this will benefit the stock market. This is how, even in real life, people can get rich. In this way we would want to not have that tipping point where the hyperbolic curb is started, we'd want it more immediately so the money supply doesn't run out too much. This is much more effective than what most real-life countries do, which is print more money. Minecraft servers are very very guilty of this economic sin, by giving money just for breaking or placing a block. This isn't good because infinite money equals massive inflation, which makes prices skyrocket, and new players can't get a hold in the economy, creating economic classes in a game with no way of coming out on top if you're new.
On the progressive tax system, there should be a way of determining the total amount of money, and people's "tax brackets" change dynamically. That would be a welcome improvement. It would otherwise be done manually most likely. Setting the tax bracket above 35% can be potentially dangerous to those who have been playing the game for a while, as too much tax can cause for slow growth, where 100% can cause stagnant growth, and that isn't usually desirable. People like being able to keep the money they earn, after all, they worked for it.
I would suggest starting the market with cobblestone costing 0.01 cent, and everything else can be figured from that point on. I don't know how appropriate this is for what you've done, but I'm just making suggestions. Because it's a floating point integer, we have plenty of "tiny amounts" to work with, and IF people use Gold Chest, they could accumulate wealth quite easily. The end point is to make a useless piece of material, a variable in an economy plugin, the final "item" in game for trade, while giving players fun, alternative ways of trading while getting TO that point. Money creation is fun if we make it fun.
I kept editing this and this may be my last edit: the problem with money multipliers in modern society (or rather, it's not used anymore in favor of a better way of making funny money) is that the amount of money is not equal to the amount of cash. We don't have to worry about this because the player account or town account or whatever, they act like their own lock-boxes. This means we are using an older form of banking, phsyically saving YOUR cash. The old way of thinking is "I give the bank 1000, it takes 100, lends 900 to person in need, person gives to THEIR bank, they take 81, lend the rest out. In the end the money is double, triple, quadruple counted, etc. This means they only have $1000 of actual cash out there, while the "money" out there is $10,000, due to being reborrowed over and over from person to bank to person to bank etc etc. Now milk costs 10x more than it did prior. It's a horrible way of handling money, and is unfortunately the way most people think it should work. It's called a pyramid scheme. The new method is very communist so we want to steer clear from that on Minecraft (or anywhere else). If you have any misconceptions about how money is made, please let's discuss because I think, so far as Minecraft goes, I have a good idea if I could just find someone willing to implement it. All in all, I had to bring up these "wrong ways of thinking" about banking and money in order to help you maybe reject some ideas you maybe thought were good based on the misconceptions. Keep this true in your heart, and the system will work: "you can't get something for nothing". As long as you remember nothing can come out of thin air, you'll have a good money system.
I don't know if this covers the whole cycle, but if you have other input I'm welcome to hearing any criticism and other ideas.
(by the way, don't forget, for the time being, how do I remove gold and diamond from the list?)
-
View User Profile
-
Send Message
Posted Mar 24, 2015@Duffman6
K, I'll do some testing and get back to you. Thanks for the report.
-
View User Profile
-
Send Message
Posted Mar 24, 2015@roracle
Banning items only works on the shop level. If you have a global shop it will work on the global shop. If you want to completely remove an item you can delete it, but this will affect composite items and is recommended to do on an economy other than the default one.
Backing all money with gold/diamonds seems like a good idea. You could sell them to the server at a set price to bring all money into the economy. Using HyperConomy in this way would be possible, but it would probably require only using player shops along with a shop or sign shops that buy the gold/diamonds. That is unless you'd want to prestock your server shops with items.
Stabilizing economies is complicated and I haven't really thought of a perfect solution. HyperConomy offers a variety of tools which might help though, such as dynamic tax to prevent players from accumulating too much money. The standard way HyperConomy works, as long as no other plugins are in use, is to have a set starting amount of money (2000000 by default). This money is then distributed to players as they sell items to the server. No money is created except for at the start of HyperConomy use. The problem with this is that early users of shops make a lot of money.
-
View User Profile
-
Send Message
Posted Mar 24, 2015I did exactly like in the tuto but the problem stays the same. (my servers are running on the same machine)
-
View User Profile
-
Send Message
Posted Mar 23, 2015@RegalOwl
Will the banned item be banned globally? I might not worry about it and just let the market run itself, but with almost useless gold so rampant in the world, it almost makes no sense to not back it somehow.
My ultimate goal is to have no more money in the world than there is gold/diamond to back it, and it's difficult to determine how well that would work for this case point as a free market practically backs everything. However, I don't like money coming out of "thin air" which is why I backed it to begin with using a set price.
Has there been discussion on this topic, stabilizing economies? Because Jobs plugins (and the sort) make money out of thin air. I can work all day and no money god comes down and says "here ya go for your troubles". But if I were employed and active in a credit-based free market, I could expect checks regularly while doing the work I've chosen (or was hired to do).
-
View User Profile
-
Send Message
Posted Mar 23, 2015@Duffman6
I've made a new documentation page for multi-server mode here. Make sure you've set yours up like the examples.
If your minecraft servers are running on separate machines or VMs you may also need to deal with firewall configurations. If they are all running on the same machine or VM but with different ports it should be easier.
-
View User Profile
-
Send Message
Posted Mar 23, 2015@roracle
Here is the tax documentation.
Initial and static taxes are set to 100 by default for setups that don't prestock their economies with items. This encourages players to sell items to the shop so that shops reach dynamic pricing mode naturally. If the initial tax were at 0 there would be no incentive to sell items over buying them and the server stock levels likely wouldn't ever reach dynamic pricing mode for many items.
If you set the tax rates to 0 buying and selling will be essentially the same price. More specifically if you sell x of an item and buy x back you will end up with the same amount of money.
To ban an item from a server shop go in the shop and type /ss ban [name]. It's fine to leave composites enabled with banned items. The stock of the banned items will go up if composites are sold that are made up of the banned item but players won't directly be able to buy the banned item.
-
View User Profile
-
Send Message
Posted Mar 23, 2015Ok the error doesn't seem to bother.
But (there is always a but :p) the multi-server option don't work properly, i have to disable/enable the plugin to refresh the account. (i use the plugin as my primary eco plugin, and i use a db).
I listed all my ip and i tried to put at the "port" option the port of the server where trhe config is or the port of bungee, but the issue stays the same :(
-
View User Profile
-
Send Message
Posted Mar 23, 2015@RegalOwl
Hey there, just wondering how to ban items? I currently have Gold and Diamond regulated, since there's plenty of mineral wealth on my server. The only reason to free them is if we run out, which won't be for a while. (Of course, if the server is big enough it could cause a big run on the bank when the announcement is made, good thing it's infinite backing :P lol) But until then, I don't see why we can't have the other items running amok in a stock exchange (I already built the stock exchange building, hehe).
So let me know please, can I ban diamond (and blocks) and gold (nuggets, ingots, blocks) from being traded on the open market? And if so, should I disable composite items until the day comes where I have to free the gold/diamonds?
EDIT: I might be over-thinking the whole thing. Also, could you point me to where it explains the tax system? I don't understand why initial and static are set to 100. Is that if you buy it's 100% more than selling? Should I set this to 0 if I want buy and sell to be the same price? (IDK if I want to, but it will help me understand why it is why it is) Also, I'm using SignShops and CraftConomy to do monetary trades currently. That's how I've been regulating it. A gold ingot is always worth $9.00, no taxes. It's like you trade the bouillon in at the bank for physically backed cash, and the value doesn't change, but I'm seeing how that can become an issue eventually. I'm seeing the value in doing it your way here, it's quick and to the point. I feel I should keep SignShops for players to freely trade without effecting the economy, especially if things they are selling are made of worthless materials.
-
View User Profile
-
Send Message
Posted Mar 22, 2015@Duffman6
That's not related to the error. You have to modify the config either when your server isn't running or when HyperConomy isn't running. So you could disable HyperConomy with /hc disable, edit the config, and then enable it with /hc enable.
-
View User Profile
-
Send Message
Posted Mar 22, 2015Yes it's harmless but i really need to use a database, so the problem is that every time i modify the config to connect whith my database the config erase the modifications :S
-
View User Profile
-
Send Message
Posted Mar 21, 2015@duff563
I will make colors configurable in the future. Unfortunately that won't help with the E/W sign issue. That is a vanilla Minecraft bug that appeared in 1.8.
You can set sell/buy price independently if you use a player shop. (/manageshop command) The same command can be used to set buy and sell prices. Just type /ms to view all the subcommands. The player shop can be setup to function just like a server shop.
-
View User Profile
-
Send Message
Posted Mar 21, 2015@Duffman6
Are you actually experiencing a problem of some sort? The error you sent is generally harmless. It is an annoying bug that's hard to find, however. If you have a method to reproduce it consistently it would help to track it down.
-
View User Profile
-
Send Message
Posted Mar 21, 2015Two things..
1. Text Colors for shop signs needs to be configurable. There are instances where colored text will appear faded if a sign faces E/W and not faded with facing N/S. Have pictures to show.
2. When setting up a shop using static pricing, would like to be able to set both sell and buy pricing independently. Can that be arranged?
Thanks....
-
View User Profile
-
Send Message
Posted Mar 21, 2015Please I need a quick answer, because I really need a working economy
-
View User Profile
-
Send Message
Posted Mar 20, 2015I got this issue when i try to connect the mysql db:
HyperConomy[2015-03-20 11:32:24.734] SQL write failed 1 time(s). The failing SQL statement is in the following brackets: [INSERT INTO hyperconomy_players (SALT, X, Y, Z, UUID, WORLD, ECONOMY, NAME, BALANCE, HASH) VALUES (?,?,?,?,?,?,?,?,?,?)] Parameters: ], [-1650.3513220743966], [33.256711318155354], [73.89468968057612], [e593d256-d23d-3bd2-98df-922889e4bb83], [spawn], [default], [Duffman], [0.0], [ java.sql.SQLException: [SQLITE_CONSTRAINT] Abort due to constraint violation (column UUID is not unique) at org.sqlite.DB.newSQLException(DB.java:383) at org.sqlite.DB.newSQLException(DB.java:387) at org.sqlite.DB.execute(DB.java:342) at org.sqlite.DB.executeUpdate(DB.java:363) at org.sqlite.PrepStmt.executeUpdate(PrepStmt.java:85) at regalowl.hyperconomy.simpledatalib.sql.DatabaseConnection.write(DatabaseConnection.java:47) at regalowl.hyperconomy.simpledatalib.sql.SQLWrite$WriteTask.write(SQLWrite.java:120) at regalowl.hyperconomy.simpledatalib.sql.SQLWrite$WriteTask.run(SQLWrite.java:113) at java.util.TimerThread.mainLoop(Timer.java:555) at java.util.TimerThread.run(Timer.java:505)
-
View User Profile
-
Send Message
Posted Mar 19, 2015@Dutch_Boy
I have done a little work maintaining the Blacksmith plugin. Is there an issue? I will be happy to try and fix it.
-
View User Profile
-
Send Message
Posted Mar 18, 2015@ricanjimmy
I'll be working on a new video tutorial series when I get some time. To do what you want first create an economy with /he create [name]. Next switch to the new economy with /se [name]. Then you can edit all item settings with the /hcset command or /hcs for short. For instance, to set all items to the median stock value you could do /hcs stock all:median
The easiest way to edit prices now, though, is to use the GUI. Download the full version of HyperConomy (not Lite) and double click on HyperConomy.jar. This will open the GUI where you can edit any economy and any item setting easily. The price will update and be displayed at the bottom when you make a change. If you're using SQLite you'll need to do this on your live server database. (HyperConomy.db) Just replace the one that's generated when you click on HyperConomy.jar with your live one. If it's MySQL you may be able to connect to the database over the internet, depending on your server settings.
-
View User Profile
-
Send Message
Posted Mar 18, 2015@Jameshobbs
The negative balance issue should be fixed in the latest development build. Let me know if it's working for you now.
-
View User Profile
-
Send Message
Posted Mar 18, 2015I cannot seem to find any recent tutorials on how to set prices on items when creating a new economy. Where are you guys finding the information you need to set this working without the default economy?