DynamicEconomy
| DynamicEconomy introduces your server to an economy where the prices constantly change based on the supply and demand of items. |
|---|

| Depends on [Vault] Vault Download Link |
|---|
Download
Here's a video with an overview of some of DE's features, graciously made by WoopaGaming!
Plugin is in BETA - Meaning it is not as perfect as I would like as of yet. I am still constantly adding features. Once I'm happy with the feature list, it'll be released into v 1.0. Expect v1.0 to have Chest Shops.
Support Pages
There's a lot to understand about DynamicEconomy, so visit some of these helpful pages!
-
Features
- Buy and Sell items in a global shop.
- Price automatically adjusts based on supply and demand!
- Customizable price ceiling & floor!
- Prefix the chat output with anything you'd like!
- Choose whether price changes are announced globally, locally, or not at all!
- Includes a custom alias file, so you can customize the aliases you use (Add whatever word in the world to stand in for, say, diamond, so if you call /buy purpleelephant it can buy you diamond!) - Even better, it already includes hundreds of aliases.
- Add items to items.yml at your whim! Just make sure to add aliases for them in alias.yml!
- Sort items into different groups, and then limit users to only being able to purchase or sell items from particular groups!
- You choose the default amount sold/bought if the user leaves out the amount argument.
- Features 340 items: the most commonly traded and used, as well as non-obtainable items and potions!
- Also, you can sell and buy enchantments! Enchant your items with any enchantment at any level, and then sell items from an item instead of selling the entire item itself!
- Custom Items.yml puts you in control of item prices, minimums, maximums, descriptions, and everything else!
- Change the price, price floor, price ceiling, price velocity, and stock, all from in-game without a restart or reload!
- Custom in-game command allows you to reload the DynamicEconomy config.yml
- Features help screen of all commands, usages, and descriptions
- Assess which features of your config are on and off from in-game.
- Simple permissions: permission is the same as the command name.
- DynamicSign - Signs that show the price, stock, velocity, ceiling, or floor of any item in REAL TIME! You can also change the colors the sign displays in!
- Find out the durability of any item in your inventory, or your armor!
- When you sell a tool or armor, the price you receive is proportionate to how much of the durability was used up. If an item is 25% used up, a player will only get 75% of the total price when he sells it! Stops "Infinite tool" abuses.
- Update Checker & Downloader!
- Sell and buy EXP!
- Data values for all woods, wools, saplings, slabs, and inks!
- Option to use either set-amount item velocities, or a percent velocity.
- The option to turn on "Price-Decay-Over-Time", meaning, if items aren't purchased for a long time, their prices will decrease! This is fully customize-able to the last bit; customize percent of price decrease, what's considered a "long time", and how often to check for these items! Or disable it all-together!
- Also, in addition to price decay over time, there's also price inflation over time, so items that aren't sold for a while will have an increase in price! This encourages sale of those items!
- Multi-World support!
- /sell hand and /price hand for selling or checking price of the item you're holding!
- Ban items from in-game instantaneously!
- Customizable random events! Make your own wacky random events that change the prices of items!
- Customize standard DE messages! Up to 32 of them, currently!
- Use your own custom currency.
- Custom log.txt file personalizes logging of all user commands for very intuitive, useful, and helpful logs for Server admins. No need to fuss over confusing server logs and exceptions. (You can disable it, if you want, too!)
- Sales & Purchase Taxes!
- Set taxes from in-game!
- Extensive region control! Select your own 3D regions in which users can buy and sell items!
- Alternative commands for /buy and /sell, so you can use other popular economy plugins in conjunction!
- Basic location control, such as setting a minimum height from bedrock in order to access the economy.
- Loans! With custom payback times, minimum and maximum loans, as many loans as you'd like, and more!
- Dynamic Interest rates for loans!
- Ability to ban the sale OR purchase of certain items!
Planned Future Features
Optional Interest Rates/Taxes on purchases and sales[ Completed 2/6/2012 5:47 pm in v .5.1]Loans with Optional Interest Rates[ Completed 2/23/2012 11:31 pm in v .7]- Chest Shops!
Option to either set IR/Tax statically, or have it dynamically change based on economy conditions.[ Completed 2/25/2012 12:08 AM in v .7.2 ]Sale of tools will give amount appropriate to current durability (A tool almost worn out will receive a very little percent of total price when sold)[ Completed 1/6/2012 11:05 pm in v .2]Optional Random Events that change item prices[ Completed 3/4/2012 1:07 AM in v .8.0 ]Price decreases over time if item is not purchased[ Completed 2/26/2012 1:42 AM in v .7.6 ]Option to not allow some items in the market.[ Completed 2/25/2012 12:36 AM in v .7.3 ]- Option to lose money upon death
- Option to store money in a bank account
Option to log all transactions[ Completed 1/22/2012 8:41 pm in v .4]- Extended abuse prevention: Looking through the kinks to ensure the dynamics of the economy are not abused by players
Update Checker[ Completed 1/21/2012 2:12 pm in v .3.2]- Prevent you from buying if you do not have enough inventory space
Data Values (35:1 etc)[ Slight addition in v.5.3 ] [ Completed 2/25/2012 11:32 pm in v .7.5 ]Location-based controls[ Slight addition in v.5.2 ] [ Completed 2/19/2012 9:24 pm in v .6 ]- MySQL Databases
Alternative Commands[ Completed 2/7/2012 10:18 pm in v .5.2]Marquee Signs (Signs that show the price and info of a given item)[ Completed 3/18/2012 1:27 AM in v .8.1 ]EXP Transactions[ Completed 3/19/2012 12:44 am in v .8.3 ]- Region Flags
- Much much more!
Donation
Your donation helps my development of this plugin and possibly more!
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=USZYP9PCHSVJW






-
View User Profile
-
Send Message
Posted Jun 23, 2012@empathdemon
1) I think I know the reason for plusminus 2) Reason for very small price changes like -.04328 is just the nature of the EnderEngine curve. If you notice, as you approach the floor price of an item, its price starts changing by virtually nothing. This is when very tiny price changes like this, and like (9.4E-4) start occurring.
They're not problems, that's just how the curve functions. Essentially I may just modify my code a little bit to tell people it changed by 0 and the price is the floor price when it's close enough rather than tiny price changes like that.
Even then, there's a point for every item when you're close enough to the floor that DE starts telling you its the floor price.
-
View User Profile
-
Send Message
Posted Jun 23, 2012Yes it does, thank you. It's confusing to have a separate page to describe "enderengine" when it's supposedly a part of your plugin.
I set up a test server for 95 finally, deleted all the old files and let dynecon create new ones. I'm having big problems getting it to work at all now, and I'm feeling very frustrated and cranky. Price changes like "+-0.0" (that's plusminus) or "-0.04328" (which resulted in a new price which was exactly the same as the old one), or one of my favorites: "You bought 1 of PLANK = $0.24 TOTAL - New Price of PLANK is $0.23846 (+9.4E-4)"
and I just don't have the patience to troubleshoot this right now.
Are other people having these types of problems? I can't understand why they show up when I'm using a fresh install.
-
View User Profile
-
Send Message
Posted Jun 23, 2012@empathdemon
Did you use the EnderEngine page?
I thought that gives a pretty definitive description.
-
View User Profile
-
Send Message
Posted Jun 23, 2012The support pages don't explain "span" at all, except that a lower number means a faster change. Can you give more specific information please?
-
View User Profile
-
Send Message
Posted Jun 23, 2012@VietNg
ChestShops will be introduced soon, and as for the alternate command, there's already an option for that in config.yml. If you set "alt-commands" to true, the commands /buy /sell /price become /debuy /desell /deprice.
@bigboy2013
Lol ok
@Underbalanced
Absolutely :P
@sleite
Flatfiles will always be an option.
@BONNe1704
If people submit Items.yml files, I'd be happy to put them up on a page for download.
@cpyle0819
Of an Item? Just do /removestock [Item] [CurrentStock] to get rid of all of it. If you mean the stock of ALL items, then you'd have to use a fresh items.yml and do a quick search and REPLACE all 50 with 0
@Oss186
I'll take a look today, I've been away from my coding laptop.
@pokeinstein
Ehh. Maybe, but it's be very complicated. Like, VERY complicated xD
-
View User Profile
-
Send Message
Posted Jun 23, 2012@mrchasez
Did u figure this out?
-
View User Profile
-
Send Message
Posted Jun 23, 2012could it be possible to make the price for certain items a formula depending on others far example make diamond block = diamond x 9 and the same time change the diamond price as if 9 were traded but the shop buying /selling diamondblocks and do this for everything so players can't just buy 9 diamonds put them into a block and sell them for more money because as well as with more complex item for exapmple enchantment tables?
-
View User Profile
-
Send Message
Posted Jun 23, 2012I keep getting errors when I try to sell... Where could it come from ?
org.bukkit.command.CommandException: Unhandled exception executing command 'desell' in plugin DynamicEconomy v.8.95 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479) at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NoSuchMethodError: couk.Adamki11s.Extras.Inventory.ExtrasInventory.getAmountOf(Lorg/bukkit/entity/Player;Lorg/bukkit/inventory/ItemStack;)I at me.ksafin.DynamicEconomy.Transaction.sell(Transaction.java:901) at me.ksafin.DynamicEconomy.DynamicEconomyCommandExecutor.onCommand(DynamicEconomyCommandExecutor.java:277) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) ... 12 more
-
View User Profile
-
Send Message
Posted Jun 23, 2012Is there a way to remove ALL stock?
-
View User Profile
-
Send Message
Posted Jun 23, 2012@ksafin
MYSQL will make configuring easier! I love to edit excel .cvs to do an import!!!!! Makes life easier than editing YMLS
@sleite
Plugins usually always have both flat or sql options. You shouldn't be scared of mysql. Easy to back up too.
-
View User Profile
-
Send Message
Posted Jun 23, 2012@Underbalanced
I don't use SQL/MySQL. I prefer flat files. Should I be worried? Will there still be an option to not use flatfiles?
Thx.
-
View User Profile
-
Send Message
Posted Jun 23, 2012maybe we could give some versions of ITEM.YML you and you could put it in some support pages?
So every new plugin user or just lazy people could just download verion of ITME.YML and use the version that he likes...
-
View User Profile
-
Send Message
Posted Jun 23, 2012@ksafin
Thanks. I'll continue to make suggestions by opening tickets.
-
View User Profile
-
Send Message
Posted Jun 23, 2012@ksafin
MYSQL will make configuring easier! I love to edit excel .cvs to do an import!!!!! Makes life easier than editing YMLS
-
View User Profile
-
Send Message
Posted Jun 22, 2012Nvm, its probably the high ceiling/floors... guess im just being stupid tonight.
-
View User Profile
-
Send Message
Posted Jun 22, 2012This is the best Economy plugin based on supply and demand ever, however I haven't implemented it in my server yet because of the lack of sign trading and the /buy command conflicts with other commands. Hopefully you guys can put sign trading in soon and have custom command. Thank you :)
-
View User Profile
-
Send Message
Posted Jun 22, 2012Well oddly im having problems again.. I have these settings for stone: Price: $1.375, Stock: 10000, Span: 1000, Floor: 0.05, Ceiling: 50. When I do a plugin reload, /price stone says $1.375 each. Then I buy one stone, it jumped to $12.05 each. And then after i bought more after that, price is barely changing at all, even when I bought 500 stone price only changed like $0.05... Did I do something wrong? It said this in log:
+ [2012-06-23 01:13:04.426] bigboy2013 bought 1 of 'STONE' for 12.051096915157203 + [2012-06-23 01:13:04.427] New price of STONE changed dynamically to 12.0511(+4.6E-4) + [2012-06-23 01:13:07.977] bigboy2013 bought 500 of 'STONE' for 6083.887882335914 + [2012-06-23 01:13:07.977] New price of STONE changed dynamically to 12.28651(+0.23541)
-
View User Profile
-
Send Message
Posted Jun 22, 2012@bigboy2013
Right!
It's a very useful feature :) You're welcome.
PS. Since you mentioned editing items 1-by-1: Imagine the suffering I went through when I had to make an Items.yml with 340 items, and manually fill in 7 fields for each item :P
-
View User Profile
-
Send Message
Posted Jun 22, 2012I guess the groups thing is actually convenient. I can just add items to it slowly, and then I know if I set up or added items already. Thanks for the help.
-
View User Profile
-
Send Message
Posted Jun 22, 2012@bigboy2013
I see your dilemma. But if you're changing stock to 0, then obviously you're not concerned about price (since changing stock changes price automatically), so just go ahead and get a new Items.yml and do the REPLACE that sleite mentioned.
@sleite
Lol, thank's for the long response. Before I respond to every part of your response, I wanted to say that I'm very open to suggestions and critiques. This plugin doesn't become better without suggestions and critiques from people who use it, and it's how it's came to what it is right now. Groups, for example, were a user suggestion I added. I tend to add about 90% of suggestions, unless I find them unnecessary and only useful in limited situations or few servers.
Yeah, I'll probably work on some of the pages, and if you're interested in contributing to some of them let me know and I can update them with anything you'd like to add.
Well like I said, /eco would be the default command. /dynecon would be the command that'd be enabled if you set "alt-commands" in the config to true. IN CASE common named commans like /eco, /buy, or /sell are in use by another plugin, the alt-commands setting lets you use the alternate names.
Ok, what you said about prices & regions makes sense. I'll probably make that a config setting and include it in the next update. If you could open a ticket for suggestions like this, I'd appreciate it. I have trouble remembering all of the suggestions I get.
I may add nicer and more user-friendly interfaces like the "hold item to issue command" approach you mentioned nearer to v 1.0. 1.0 is supposed to be the very refined full version of DE ready for release, so that's something I want to have in that package, while focusing on core features until then (ChestShops, MySQL)
Overall, I'm glad you like the plugin though :)