GlobalMarket
GlobalMarket is a global market system. It allows players to buy and sell items via a convenient in-game interface. It's similar WoW's Auction House or Runescape's Grand Exchange. I created this plugin awhile ago (back in the days of WebAuction, it's what inspired me) for private use, but I've decided to release it to the public. This plugin requires Vault and ProtocolLib, other than that, just drop it in plugins
(make sure you have Vault plus a supported economy plugin installed) and start trading!
Features
- Players can put any item up for sale using a dead simple in-game GUI system (see below)
- Uses ProtocolLib for proper item serialization that supports Bukkit, Spigot, and Cauldron
- Real time interface, all trades show up immediately without having to 'refresh' or close the GUI
- No maintenance or admin interaction required
Mailbox system that allows you to set up market areas or auction houses(not currently in 2.0.0)A built in price guide that compiles average prices from previous transactions(not currently in 2.0.0)
Latest Dev Build
Development builds of this project can be acquired at the following continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
http://build.survivorserver.com/job/GlobalMarket%202.0.0/
Changelog
Usage
- The Interface
- This is a display of all current listings, you click an item to buy it. You can shift+click to remove a listing if you own it, or if you have the "globalmarket.listingsadmin" permission. Listings automatically expire after 1 week (configurable). You can use
/market
to access the menu.
- Stock
- When you purchase an item it will be sent to your stock. Stock is an entirely optional system but is suggested to be enabled, as disabling it will disable certain other features like
/market send
. The stock system can hold a configurable amount of stacks of items in a configurable amount of slots. Once you place an item in your stock, you can list it to be sold to other players. Players can also send items to other players' stock via/market send
if they have the "globalmarket.command.send" permission.
- Server Listings
- You can create 'infinite listings' that do not expire and can't be bought out. Create them with
/market createinf <price> <[amount]>
. There's a dedicated section to server listings in the Market menu. You'll need the "globalmarket.command.createserverlisting
" permission to do this. Or you can disable this system all-together in the config.
Commands
Command | Description | Permission |
---|---|---|
/market | Opens the Market menu. | globalmarket.use |
/market ? | Shows command help. | <no permission> |
/market send <player> <[amount]> | Sends the item you're holding to <player>'s stock. Amount is optional. | globalmarket.command.send |
/market createinf <price> <[amount]> | Creates a server listing. Amount is optional. | globalmarket.command.createserverlisting |
/market reload | Reloads config.yml | globalmarket.command.reload |
Permissions
- globalmarket.use - base permission, required to use /market
- globalmarket.listingsadmin - ability to remove all listings
- globalmarket.command.send - ability to use /market send
- globalmarket.command.createserverlisting - ability to use /market createinf
- globalmarket.command.reload - ability to use /market reload
Config
All config values have comments that explain what they do in config.yml, how convenient for me!
If you wish to blacklist items from being used on the Market, there is blacklist.json. You can add material values with meta values:
- APPLE:0 - blacklist apples
- INK_SAC:-1 - blacklist all dies
If you're running Cauldron, you can do things like:
- oredict:ingotSteel - blacklist any item with an OreDictionary value matching ingotSteel
- extracells:storage.component:-1 - blacklist all ExtraCells storage cells
Locale
Virtually every string in the plugin is editable via the "en_US.json
" file, inside the plugin's JAR. It's pretty straightforward to edit. Don't replace or edit the %s
or %1$s
's, these are variables. For example, "Item sold: %s" would appear as "Item sold: Cobblestone" in-game. You can add/edit colors by typing &
plus a color code. So light green (the color code is a) would be &a
. You can find color codes here: http://ess.khhq.net/mc/
You can also create an entirely different language set, name it something like ch_CN.json, stick it in the server's JAR, and change the appropriate config value in config.yml to use it.
Source
https://github.com/Dasfaust/GlobalMarket
That's all for now. Sorry if things are unclear, I'll be updating this page with more information periodically. If you're stuck just add a reply and I'll do my best to help!
When placing an item into the GUI to create a listing, it drops the item on the ground (boots it out of the players inventory) and they are not able to create this listing. Players can only create listings via command.
Even I stored 320 same type item in stock, I only can sell them once. For example, if I want to sell every glass block at 3 $ and I have stored 320 glass blocks in stock, when one player double click my good and purchase them, my listing will disappear, although there are still 319 glass blocks in my stock. Every time, I have to create the listing again to sell the rest of same type items. GlobalMarket 2.0.0.28 Beta
Every time a player joins it clears their items off the market, is there any way to allow them to be sold while they're offline and not have to relist every time they join like it used to be?
The createinf command don't work. =\ Please update.
Also, is there a way to keep NBT data?
I type /market createinf 0 1 and it doesn't know the command. Is it only in newer versions? If so, is there a way I can get it to work on 1.7.10?
There is a section in the config like:
Keep up the good work! just waiting on a official release of version 2.0
Thumbs up from me!
how do i change words up in shop its written market listings
@devioursoul
Why you ask me? This plugin is from "xdasfaust"
The v1.3.0-12 still works for me on MC v1.10.2
Hey @dutchy1001
Great plugin. Is there a version for 1.10?
@SuperRonanCraft
Not to blow your trumpet here m8 but maybe update first before you create a post.
Your error is caused by GlobalMarket v1.2.2 for MC1.6.2, while your on server (according to your signature) is SuperRonanCraft Minecraft Server 1.9.4. many things have changed between those versions of MC.
My self I still use a dev build (never released here) from jenkins, click here which I still prevere over the new v2 beta version. (GlobalMarket v1.3.0-12 rules)
There's a huge error in my console, please fix this issue D: Plus this whole post is not what the plugin promises, so yeah... that's also an issue, please update!
Error: http://pastebin.com/vEEpZnUn
Please add /market create (price) (amount) again!!!!! The way to list things on the market now is not user friendly at all. Especially considering there are lots of kids using it. Having to do the price in increments is much more complicated than just typing the price you want and being done with it.
update to 1.10 please
Senario:
Player wants to buy potion bottles. None were available in the marketplace. No other players were on-line.
Suggestion:
Wouldn't it be nice if there was a way to 'create a listing' to BUY something instead of to sell it?
Then other players that have a lot of that item would know what other players are looking for, rather than trying to sell stuff that nobody is interested in.
Cheers,
@Macanally
Use:
- globalmarket.create - permission for /market create <price> {<amount>} - globalmarket.quicklist - permission for /market listings - globalmarket.quickmail - permission for /market mail
I'm not able to create any infinite listings using the /market createinf command. Any advice? Google doesn't seem to hold the answer I need.
Could you add some kind of conformation message when a player buys another players item? Also, I miss that feature you had where you could click a chest to open the market up. :( Other then that, thanks for updating it!!!
What is the permission for /market listings? I have given them globalmarket.use but they can only do /market and none of the market commands like /market listings.
Latest build gives me this error in console every once in a while
--
[14:07:09] [Craft Scheduler Thread - 30/WARN]: Exception in thread "Craft Scheduler Thread - 30"
[14:07:09] [Craft Scheduler Thread - 30/WARN]: org.apache.commons.lang.UnhandledException Plugin GlobalMarket v1.2.2 generated an exception while executing task 73
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
at com.survivorserver.GlobalMarket.MetricsLite.postPlugin(MetricsLite.java:285)
at com.survivorserver.GlobalMarket.MetricsLite.access$200(MetricsLite.java:51)
at com.survivorserver.GlobalMarket.MetricsLite$1.run(MetricsLite.java:173)
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftTask.run(CraftTask.java:71)
at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
... 3 more
[14:07:09] [