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!
@xdasfaust
Okay, it now works! :) 1 problem though, how can I allow players to use mailbox chests, without granting them access to create them?
@ZwPBerserk
Not currently, but both of those suggestions are possible.
@Dacrazykilla
I'll be doing it regardless because of my own server.
@ZwPBerserk
I'll do that, for now you can just remove their listings.
@Wonkee
I had to take it down. They will return later, for now version 1.1.1 is the same as the dev builds.
@deleted_10786114
Do you have Vault installed?
@iTeush
Thanks! I'll put that in the description.
Hey! I made a french traduction of your plugin: :) http://pastebin.com/FfXCjbe7
When i start my server after installing global market, it doesn't generate a folder. I really need help? CraftBukkit build 2759
Where are these dev builds I keep hearing about?
ERROR
http://dev.bukkit.org/paste/7646/
I got 1 addition to make this plugin perfect (for me at least).
Make it so you can set a maximum sell price.
If people want to store stuff safely they just sell it for the price of 9999999999999999999.
Having that would be great.
@xdasfaust
I'm not seeing the Dev build anywhere.. Did you remove it?
I can only assume that you're waiting for an approval?
Alright cool sounds good. why a web interface though? is that necessary? you should make a poll to see who would use it because no offense but I personally have no need for one but yea just one mans opinion =p
Great plugin!
Is there a way people can have items into their mailbox for a limited time? So they cant use it as a storage.
Also, You stated in the main page that its possible to make an auction hall. Is there any way so players can only watch the /market listings at a certain place? (like the mailbox)
@SyncCraft
That's ok, try the latest dev build now. It may fix your problem.
@xdasfaust Not sure how to send you my Vault jar, but I'm using the latest version of vault (1.2.25 for CB 1.5.1) from the Bukkit Dev page, and I'm using Spigot. I'm also unsure how to check which Java version is running.
Sorry for the lack of info :S. Hope it's enough to help.
@SyncCraft
That error is caused by Vault. Can you send me your Vault jar file? Also, what type of Bukkit build are you running? Spigot, CraftBukkit, etc. I'm wanting to test and see if I can eliminate the error. Also, what version of Java do you have?
@xdasfaust
This is what happens when I perform /market create 10 while holding 64 dirt. Then I did /market listings.
Please note, before I did /market create, the listing worked (when it's empty).
http://pastie.org/7725413
@Dacrazykilla
I've currently got the work cut out for me with the web interface, but expect some form of it in the next minor version (1.2.0 maybe) that'll probably be infinite listings. But there will eventually be a full 'admin shop' built in.
Any word on an admin shop
@xdasfaust
I fixed it, it was very easy just set true the Server Option in the config.
You are the best. Thanks so much.
@Newpoman
Check the latest dev build. http://dev.bukkit.org/server-mods/global-market/#w-latest-dev-build
globalmarket.create
is for creating a listing, andglobalmarket.send
is for sending an item to another player's mailbox.Hey Awesome plugin. I have been wanting something like this for a long time. Is there any way you can add a perm for being able to post auctions. I have a sponsor world that is creative and i need to be able to block it in that world. But I need a permission node to be able to do so. Thanks