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 Jan 1, 2014I'm coming across several item names that don't work with the search, like oak wood, oak sapling, etc.
I'm using the 1.3 dev builds, might want to look into it.
-
View User Profile
-
Send Message
Posted Jan 1, 2014Can someone help me?
http://upic.me/show/48903737
-
View User Profile
-
Send Message
Posted Dec 31, 2013found my answer
-
View User Profile
-
Send Message
Posted Dec 30, 2013I don't know why, why my server crashed and there seems to be GlobalMarket errors in it: http://pastebin.com/i8y72W5i
-
View User Profile
-
Send Message
Posted Dec 29, 2013Anyone else having a problem with infinite items disappearing off the market?
this has happened 2x now in the last 2 weeks.
-
View User Profile
-
Send Message
Posted Dec 29, 2013Everyone on my server is LOVING this plugin. Easily the best plugin I've ever seen. Would it be possible for /market send to work for offline players?
-
View User Profile
-
Send Message
Posted Dec 29, 2013Any plans for some kind of Citizens integration?
-
View User Profile
-
Send Message
Posted Dec 28, 2013Hey,
Just wanted to post that I'm still using the plugin after being one of the first to comment and start bug reporting. Glad to see it in the best shape it has ever been in, cannot run without it. Awesome work!
-
View User Profile
-
Send Message
Posted Dec 28, 2013A fantastic plugin! I will greatly use this on my server!
-
View User Profile
-
Send Message
Posted Dec 28, 2013A friend of mine wants to add this to her server, but she uses an item based economy. Specifically, enchanted gold nuggets, so that they cannot be crafted by the players. Would this plugin be able to recognize this and only take the enchanted coins? Or would I need something like Gringotts to define the item as currency on the server?
-
View User Profile
-
Send Message
Posted Dec 22, 2013NPE in the latest snapshot/devbuild:
http://pastebin.com/pymTJg3P
Caused by:
Open the mailbox via command /market mail <user> and click on a item. (Using MySQL to store data)
-
View User Profile
-
Send Message
Posted Dec 20, 2013Idk why this is happening but whenever someone purchases an item, I put a queue of 5 minutes and instead it comes in like 3 seconds. Why is this happening and how can I fix it? Please help. Thank you!
-
View User Profile
-
Send Message
Posted Dec 20, 2013@xdasfaust
That looks awesome!
-
View User Profile
-
Send Message
Posted Dec 18, 2013@xdasfaust
Thanks ;)
-
View User Profile
-
Send Message
Posted Dec 18, 2013@Kane_Hart
Just for infinite listings, though I thought I remember adding that functionality, but I don't see it anywhere haha. So I'll put it in.
@mobilephone2003
Ok, thanks. Can you see if it still does that with a fresh data.db?
-
View User Profile
-
Send Message
Posted Dec 18, 2013@xdasfaust
It was a test with the data i had from my production server (SQLite) with the dev version thrown in the plugins folder.
I didn't regen the config so that may have been the issue.
-
View User Profile
-
Send Message
Posted Dec 18, 2013Is the account field just for the infinite listings or does it also get tax money? I like to take all the tax money and put it to a single account for usage for events and prizes down the road on our server.
-
View User Profile
-
Send Message
Posted Dec 17, 2013@mobilephone2003
Are you using MySQL or SQLite? Also that doesn't look like #101, it should have a comparator instead of the paper in the middle of the GUI, maybe it's a bit older? In #95 I changed the MySQL driver to force UTF-8 and I'm wondering if that's why the lore is messed up. Does that only happen when you add items and restart?
In general 1.3 is pretty stable, but I'd wait until we figure out what's wrong with the lore here.
-
View User Profile
-
Send Message
Posted Dec 17, 2013@xdasfaust
Sweet!
I'm still rocking 1.2.2 at the moment, would you say the dev builds (1.3) are stable enough current to use on a production server with a fair amount of players?
On my test server with dev build #101, lore looks a bit odd:
http://i.imgur.com/V9I8Tsz.png
-
View User Profile
-
Send Message
Posted Dec 16, 2013@mobilephone2003
Yeah I definitely want to do that. But as of right now it looks like I may need to rewrite the pricing system. Currently it just looks through all of the history and builds the prices on the spot, so it'd be too slow to add to the interface in its current state. I'll have to make it build the data periodically or as items are sold, still not sure which route I'll take. It will either show the full average value or maybe a percentage value, like "200% of avg. price". I think percentages look cleaner but that's why there is a config!
I think I'm going to be making a public to-do list so you guys can see what I'm working on.