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
/marketto 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 sendif 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!
-
View User Profile
-
Send Message
Posted Oct 10, 2016When 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.
-
View User Profile
-
Send Message
Posted Sep 17, 2016Even 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
-
View User Profile
-
Send Message
Posted Sep 5, 2016Every 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?
-
View User Profile
-
Send Message
Posted Sep 4, 2016The createinf command don't work. =\ Please update.
-
View User Profile
-
Send Message
Posted Aug 4, 2016Also, is there a way to keep NBT data?
-
View User Profile
-
Send Message
Posted Aug 4, 2016I 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:
-
View User Profile
-
Send Message
Posted Aug 3, 2016Keep up the good work! just waiting on a official release of version 2.0
Thumbs up from me!
-
View User Profile
-
Send Message
Posted Aug 3, 2016how do i change words up in shop its written market listings
-
View User Profile
-
Send Message
Posted Aug 2, 2016@devioursoul
Why you ask me? This plugin is from "xdasfaust"
The v1.3.0-12 still works for me on MC v1.10.2
-
View User Profile
-
Send Message
Posted Aug 2, 2016Hey @dutchy1001
Great plugin. Is there a version for 1.10?
-
View User Profile
-
Send Message
Posted Jul 17, 2016@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)
-
View User Profile
-
Send Message
Posted Jul 17, 2016There'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
-
View User Profile
-
Send Message
Posted Jul 13, 2016Please 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.
-
View User Profile
-
Send Message
Posted Jul 13, 2016update to 1.10 please
-
View User Profile
-
Send Message
Posted Jul 6, 2016Senario:
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,
-
View User Profile
-
Send Message
Posted Jul 5, 2016@Macanally
Use:
- globalmarket.create - permission for /market create <price> {<amount>} - globalmarket.quicklist - permission for /market listings - globalmarket.quickmail - permission for /market mail
-
View User Profile
-
Send Message
Posted Jun 30, 2016I'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.
-
View User Profile
-
Send Message
Posted Jun 28, 2016Could 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!!!
-
View User Profile
-
Send Message
Posted Jun 25, 2016What 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.
-
View User Profile
-
Send Message
Posted Jun 24, 2016Latest 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] [