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 May 8, 2013Does a mailbox have to be set up outside a players house? Or can I set up the one mail box?
-
View User Profile
-
Send Message
Posted May 8, 2013@xdasfaust:
The String bug does not appear in dev build #11. But tons of other bugs :)
Bug#1:
If you HOLD shift, and "spam" the shop window it does not send the items to the mailbox.
The Items will be removed from the shop, money will be withdrawn but not sent to the mailbox.
Bug#2:
Sometimes the mailbox does not "update" you can remove ALL items from the mailbox, including the paper and open it again and remove the items again (no idea how to reproduce, just happens randomly)
Bug#3:
This is actual not a bug, but the market system seems a bit slow when many players are accessing the window at the same time.
10 Players opend the shop, and it takes up to 6 seconds to proceed with a action (like adding something, or buying)
I hope you can fix the bugs as fast as possible ;) I like the plugin, it has potential and a awesome idea :)
-
View User Profile
-
Send Message
Posted May 8, 2013@pandapipino
PM me instructions on how to reproduce the dupe.
-
View User Profile
-
Send Message
Posted May 8, 2013players can dupe the paper in the market, can you fix it on the next patch? Thanks
-
View User Profile
-
Send Message
Posted May 8, 2013@xdasfaust : Of course,
this is my listing.yml : http://pastebin.com/3bEkWh1X
Thanks :)
-
View User Profile
-
Send Message
Posted May 8, 2013@Slind14
Use MCPC+, and MySQL isn't always a good thing. It wouldn't give any benefits, YAML's performance is fine, and it's easier for anyone running a server.
@Benoit87
Can I see your listings.yml file?
-
View User Profile
-
Send Message
Posted May 8, 2013can u add Mod Support ? So that i can search for Item IDs not only names ? and mysql would be also greate
-
View User Profile
-
Send Message
Posted May 8, 2013Hi ! I enjoy your plugin, but there is a problem when we enter /market listings
-
View User Profile
-
Send Message
Posted May 7, 2013@xdasfaust
Feature Request: can we also add the player name who bought (Buyer) your item in the Transaction Log book?
Thanks
-
View User Profile
-
Send Message
Posted May 7, 2013@xdasfaust
om om :C unlimited mode :C
-
View User Profile
-
Send Message
Posted May 7, 2013@Mortalsinn
Thanks for reminding me. Updated the description.
-
View User Profile
-
Send Message
Posted May 7, 2013using the latest dev build but now we need a permission for /market listings. There is no note of what this node is, none that I can see anyways on your page here.
Edit: never mind, found it in the source "globalmarket.quicklist"
-
View User Profile
-
Send Message
Posted May 7, 2013@crysis992
Try the latest dev build, let me know if it works.
@pandapipino
I'm working on addressing that issue, not totally sure what I'll do yet, though.
-
View User Profile
-
Send Message
Posted May 7, 2013I have an additional feature request: can we limit the players on how many items they are allowed to sell and limit the mailbox slot to a configurable amount? like if the player already has a pending of 10 items in the market they should not be allowed to sell again?. This should fix the players making the shop as their own private chest. Thank I hope this request will be evaluated.
-
View User Profile
-
Send Message
Posted May 7, 2013Doesnt work for me.
Tested with the version from this site + dev builds.
After i bought/sold 1 item, it spams my console and cancel all other transactions.
Error:
Caused by: java.lang.NumberFormatException: For input string: "7,5"
The "input string 7,5" is always random, from 1,5 to 15.
Using it with default config.yml / default locale.yml (changed nothing in the config files)
Edit: forgot link to the full error:
http://pastebin.com/j4rjqTUN
-
View User Profile
-
Send Message
Posted May 6, 2013Wow! this might be the best shop plugin but I expect a lot of improvements in the near future. Nice work!
-
View User Profile
-
Send Message
Posted May 6, 2013yep I tried out a test run on this plugin today and it is exciting!
The only real update I would recommend is canceling the commands if the player is in creative mode. Other than that I haven't found much issue besides the unlimited listings which isn't a big deal - just messy when searching for good deals
-
View User Profile
-
Send Message
Posted May 5, 2013there is so much win with this plugin... its insane lol. Good job on thinking up this!
-
View User Profile
-
Send Message
Posted May 4, 2013@Mortalsinn
Delete your config...
-
View User Profile
-
Send Message
Posted May 4, 2013Hoping you can fix this super fast.... updated to 1.5.2 and getting this error again whenever someone types /market listings