UltiMarket
UltiMarket
UltiMarket is a global Item market/shop plugin which automatically determines item prices based on supply and demand! UltiMarket acts as a globally accessible self-adjusting item shop on your server from which players can buy or sell almost any in-game item using in-game currency from any economy plugin!
As items are bought, their prices increase incrementally.
As items are sold, their prices decrease incrementally.
This means that over time, the prices of items on your server will adjust to reflect how much players want or don't want them and also how rare they are.
NEW in v1.1.4:
- /setprice command!
- Now you can set the prices of items in-game!
- Also tonnes of bug fixes xD
REQUIRES VAULT!
Vault: http://dev.bukkit.org/bukkit-plugins/vault/
Also requires an Economy plugin!
It really doesn't matter which economy plugin you use, I'm pretty sure they'll all work, but I have tested it with BOSEconomy, and I know for a fact that that works fine.
BOSEconomy: http://dev.bukkit.org/bukkit-plugins/boseconomy/
Below is an example of a typical purchase with UltiMarket:
Commands:
Player:
- /buy [item] [amount]
- Buys [amount] [item]s from UltiMarket!
- /sell [item] [amount]
- Sells [amount] [item]s to UltiMarket!
- /price [item]
- Checks the price of an item!
- /expensive
- Gives you a list of the most expensive items on the server! - (Has a small bug which causes some items not to appear for some reason.)
- /cheap
- Gives you a list of the least expensive items on the server!
- /sellall
- Sells all sellable items in your inventory!
Admin:
- /setprice [item] [price]
- Sets the price of [item] to [price]!
You can also use "hand" to buy, sell, check the price of, etc. the item that's in your hand, eg. /sell hand 23, or /buy hand 20, or /price hand, or /setprice hand 2.30.
Permissions:
Player:
- ultimarket.buy - Allows usage of /buy
- ultimarket.sell - Allows usage of /sell
- ultimarket.price - Allows usage of /price
- ultimarket.sellall - Allows usage of /sellall
Admin:
- ultimarket.setprice - Allows usage of /setprice
This can open up a whole new aspect to your server:
Imagine a player, who we'll call Bob, notices the price of bread is surprisingly high. This would probably be because many other players have been buying bread for a food source. Our player has his wits about him and realises the potential profitability of this. He can build a huge wheat farm, turn the wheat into bread, and sell it, making a big profit! With this new found money, he can buy those bookcases he needed to complete his enchanting room. Also, he can't sell bread and make a large profit forever, as the price will be decreasing as he sells more! All this has been brilliant for the players who were using bread as a food source, because now their food is cheaper to buy! Everybody wins!
Players can even use the plugin like a stock market! They can buy items when they're cheap and then sell them when their price has gone up!
I have also added random price drops and raises of randomly selected items to happen every so often! You can turn this on or off in the config and also adjust it.
UltiByte Plugin Review:
Você fala Português?
Clique na bandeira para um vídeo Português por AbsintoJ!
Config:
First, you should start and stop your server so the UltiMarket config generates, then you can go in and change the settings to whatever you wish. All the settings are explained within the config at the top :P
To-Do
- Imminent:
- Deny buying and selling if the player is in creative mode.
- Soon:
- Add "all" argument, so players can do, for example, /sell hand all
- Add config option to use Stock for items
- Add price floor and ceiling option for individual items (disabled by default)
- Future:
- Add ability to purchase and sell enchantments
- Add shop GUI
- Restructure plugin so it adds items based in what items exist in the current server rather than which items I have pre-programmed into it
- Add config option (disabled by default) to use % price changes
- Change plugin database to MySQL, so it runs faster
- Make an UltiMarket API
- Maybe?
- Allow prices to be passed to other plugins
- Make UltiMarket work with StrangeWeapons in some way, eg. buying/selling keys
I created this plugin because a plugin I used to really like, (DynaMark by smickles), unfortunately stopped working as Bukkit updated. I had been looking around for any plugins which resembled DynaMark in terms of its simplicity of usage and its mechanic, but could only find either broken or insanely complicated ones. About a year passed and by this time I had learned Java and the Bukkit API with the help of woutwoot. I then decided to make UltiMarket! I should make it clear that this is NOT an update to DynaMark. This is a completely new plugin who's main mechanic resembles what DynaMark's was.
Bugs? Feature requests? General comments?
Please leave a comment so I know! =D Any bugs I'll try to squash for future updates and feature requests are welcomed as long as they're sensible xD, i.e. not "MAEK IT GIV EVERYONE A MILLION DIAMONDS BECOZ LOL"
Thank you!
Feel free to post your IP below if you're using UltiMarket by the way (making sure you say that you're posting it because you're using UltiMarket), that way people can go on your server and try it out before they download it :D, also I might come and have a peek xD, my Minecraft name is Warby579 :P
Download Count
- 50 - Thank you! :D
- 100 - :O, that was quick!
- 500 - !!! :D :D
What?
14.03 09:05:48 [Multicraft] Skipped 39 lines due to rate limit (30/s) 14.03 09:05:48 [Server] INFO at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:456) 14.03 09:05:48 [Server] INFO at org.bukkit.plugin.java.PluginClassLoader.remappedFindClass(PluginClassLoader.java:539) 14.03 09:05:48 [Server] INFO Caused by: java.lang.ClassNotFoundException: Failed to remap class net.ultibyte.UltiMarket1.UltiMarket 14.03 09:05:48 [Server] INFO at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) 14.03 09:05:48 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:634) 14.03 09:05:48 [Server] INFO at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:222) 14.03 09:05:48 [Server] INFO at cpw.mods.fml.common.FMLCommonHandler.handleServerAboutToStart(FMLCommonHandler.java:309) 14.03 09:05:48 [Server] INFO at cpw.mods.fml.common.Loader.serverAboutToStart(Loader.java:817) 14.03 09:05:48 [Server] INFO at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:112) 14.03 09:05:48 [Server] INFO at cpw.mods.fml.common.LoaderState.getEvent(LoaderState.java:84) 14.03 09:05:48 [Server] INFO at java.lang.reflect.Constructor.newInstance(Constructor.java:525) 14.03 09:05:48 [Server] INFO at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 14.03 09:05:48 [Server] INFO at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 14.03 09:05:48 [Server] INFO at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 14.03 09:05:48 [Server] INFO at cpw.mods.fml.common.event.FMLServerAboutToStartEvent.<init>(FMLServerAboutToStartEvent.java:29) 14.03 09:05:48 [Server] INFO at org.bukkit.craftbukkit.v1_6_R3.CraftServer.loadPlugins(CraftServer.java:230) 14.03 09:05:48 [Server] INFO at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:231) 14.03 09:05:48 [Server] INFO at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:307) 14.03 09:05:48 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:194) 14.03 09:05:48 [Server] INFO org.bukkit.plugin.InvalidPluginException: java.lang.ClassNotFoundException: Failed to remap class net.ultibyte.UltiMarket1.UltiMarket 14.03 09:05:48 [Server] SEVERE Could not load 'plugins/UltiMarket.jar' in folder 'plugins' 14.03 09:05:48 [Server] INFO file backend registered! 14.03 09:05:48 [Server] INFO sql backend registered! 14.03 09:05:48 [Server] INFO Loaded inheritance map of 792 classes 14.03 09:05:47 [Server] INFO Mapping loaded 5 packages, 8495 classes, 28815 fields, 56825 methods, flags 1fdd6 14.03 09:05:47 [Multicraft] Skipped 16 lines due to rate limit (30/s) 14.03 09:05:46 [Server] INFO Starting Minecraft server on 64.237.50.211:25630 14.03 09:05:46 [Server] INFO Generating keypair 14.03 09:05:46 [Server] INFO This server is running MCPC+ version git-MCPC-Plus-jenkins-MCPC-Plus-164-232 (MC: 1.6.4) (Implementing API version 1.6.4-R2.1-SNAPSHOT) 14.03 09:05:46 [Multicraft] Skipped 248 lines due to rate limit (30/s) 14.03 09:05:45 [Multicraft] Skipped 93 lines due to rate limit (30/s) 14.03 09:05:44 [Multicraft] Skipped 38 lines due to rate limit (30/s) 14.03 09:05:43 [Server] INFO Activating mod Forge 14.03 09:05:43 [Server] INFO Activating mod FML 14.03 09:05:43 [Server] INFO Activating mod mcp 14.03 09:05:43 [Server] INFO Forge Mod Loader has identified 4 mods to load 14.03 09:05:41 [Server] INFO Searching /mods for mods 14.03 09:05:41 [Server] OFF Logging level for ForgeModLoader logging is set to ALL 14.03 09:05:41 [Server] INFO Reading custom logging properties from /config/logging.properties 14.03 09:05:41 [Server] INFO Completed early MinecraftForge initialization 14.03 09:05:41 [Server] INFO Replaced 111 ore recipies 14.03 09:05:41 [Server] INFO MinecraftForge v9.11.1.965 Initialized 14.03 09:05:41 [Server] INFO Initialized 14.03 09:05:41 [Server] INFO 9.11.1.965 14.03 09:05:41 [Server] INFO MinecraftForge v 14.03 09:05:41 [Server] INFO Attempting early MinecraftForge initialization 14.03 09:05:41 [Server] INFO Starting minecraft server version 1.6.4 14.03 09:05:39 [Server] INFO Launching wrapped minecraft {net.minecraft.server.MinecraftServer} 14.03 09:05:39 [Multicraft] Skipped 15 lines due to rate limit (30/s) 14.03 09:05:38 [Server] INFO Mar 14, 2014 9:05:38 AM net.minecraft.launchwrapper.LogWrapper log 14.03 09:05:38 [Server] INFO Considering library net.java.jinput:jinput-platform:2.0.5 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl-platform:2.9.1-nightly-20130708-debug3 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl_util:2.9.1-nightly-20130708-debug3 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl:2.9.1-nightly-20130708-debug3 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl-platform:2.9.0 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl_util:2.9.0 14.03 09:05:38 [Server] INFO Considering library org.lwjgl.lwjgl:lwjgl:2.9.0 14.03 09:05:38 [Server] INFO Considering library com.google.code.gson:gson:2.2.2 14.03 09:05:38 [Server] INFO Considering library net.java.jutils:jutils:1.0.0
@dirtrider478
It works in 1.7.2 (Spigot) However the new blocks are not working. Aswel as all items with sub-id's.
Wanna see this plugin in action? Join mc.dutcholdskool.nl
we use it over at "mc.delecraft.net"
@UltiByte
Hey man can you make this with MCStocks http://dev.bukkit.org/bukkit-plugins/mcstocks/
They have a api
Can some one please update this so its compatible with 1.7.2 or at least tell me how i can add the new items to this plugins please im in desperate need for it.
add a feature in the config so we can change the prefix!
@GoldenEagle1995
Just decompile the Essentials.jar (change .jar to .zip and un-zip it), then go to the plugin.yml and find the /sell command. You can either delete it or change it to something other than /sell.
oh i found another bug if you use essentials and you type /sell it will disaply the essentials sell message for those with permissions of selling but when you sell ultimarket will take position
Hello there is a bug if i try to sell potion. im not sure if it is part of the items with : http://prntscr.com/2fl02e nice plugin! keep it up to date thanks server ip: pvp.reborncraft.biz
@UltiByte
Please, can you give an option to translate messages?
Right. Got a break from college for Christmas now. Hopefully I can get some work done on UltiMarket :D
I'll try and get round to fixing as many bugs and problems as possible. I have 2 and a bit weeks off, but I also have a lot of revision I need to do; I also will be making some videos, music, and also having a break xD
So updates inbound!
It seems a good plugin, I'm waiting for an update with a language file ;)
Add signs For buying and selling
There are some HUGE bugs... like the price goes negative and when ever I blacklist goes back and makes it un blacklisted
I'd love the source files so I can fix the errors it gives with when used with out servers.
Can you send all lines for translate into PT-BR?
I am super excited to start using this! -however despite both BOSEconomy and vault working perfectly this plugin won't so much as generate a config file. I am using the 1.4.1 version on my 1.6.4 server. I haven't seen otherwise so I assume you just drop the plugin inside the 'plugins' folder. Am I wrong?
@UltiByte
Man, AbsintoJ is BRAZILIAN ;/ put a brazilian flag :(
@UltiByte
I can probably help if you want :) PM me.