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!
Hi this just keeps telling me to aim my cursor at a chest to create a mailbox following the command /create mailbox but I tried doing it from all angles and I even tried it while standing on the chest but for some reason it cannot recognise there is a chest right in front of me? There are no errors on the console it just won't let me create a mailbox no matter what I do, I have op and it's my own bukkit server.
When I Downloaded The .jar i put it into the Plugins File and started up the server and when i logged on it didnt Work... Did i do something wrong?
cane u make it sow u cane click npc to acces it ?
Hey I made a video in french to explain the plugin if you are interested: http://www.youtube.com/watch?v=r6wpUQKdrIU I also corrected some mistakes in the translation: http://pastebin.com/x0UsyFKX
:)
@jostake
That's basically the same idea I had, but with chests. He said he'd implement it so just wait. And as far as NPCs go, just use citizens.
Wow I am absolutely impressed with this plugin. However, is it possible for the market to only work within specific areas by clicking on signs or NPCs? I built a Grand Exchange on my server but the area is kinda redundant now. Thank you! :D
P.S. My server IP is iadventure.no-ip.org
@deleted_10786114
JDK is the development kit. It comes with Java 7, so you'll be fine either way.
@xdasfaust
Ok ill try commandbook. Is there a difference between the normal java 7 and the JDK Java 7?
@xdasfaust
Huzzah! I fixed it! I installed the JDK version of Java 7 and now it works! Awesome plugin :D
Very nice plugin however before I test it out is it possible to make it so players can only use this market in certain areas? Like clicking on a chest,sign or NPC?
@lieudusty
Running Linux? If you use Ubuntu/Debian use
If you're using Windows go to Control Panel -> Programs -> Java, hit the Java tab up top, then click 'Veiw', and change it to which ever version you installed.
@xdasfaust
Alright I installed command book and ran debug info and it turns out I'm running Java 6 but even after I update it still says I'm running Java 6 :/
@Zawmbee
That can be done, I'll try to have it in the next version.
@deleted_10786114
Make sure Java is set to use 7 by default. Install CommandBook and do
/debug info
to get which version of Java the server's running on. The 'Unsupported major.minor version 51.0' error is caused by previous versions of Java trying to load something compiled with 7.@lieudusty
Make sure you're using Java 7 also. If you can't upgrade I can recompile it with 6 and send you the jar.
I overlooked this problem, from now on I'll compile against Java 6 for future versions.
I installed GlobalMarket v.1.1.1 for Bukkit build #2754 and the plugin errors with
Also I'm using the latest Java version, Java 7 Update 21
@xdasfaust
I have Java 7 Update 21 installed. I really like the idea behind this plugin and would like to try it out on my server as soon as possible.
Don't know if this is possible, but if you could link the "auction house" to a chest, that'd make it great for a user-friendly physical auction house.
@deleted_10786114
Thanks for the report, are you using Java 6? The plugin was built using Java 7, you'll need to update to use it.
@xdasfaust
Yeah, Vault's installed and works, but i get this java error on a reload, and when i start my server. http://pastie.org/7730404
@xdasfaust
I asked someone to test it and he said he didn't have permission to open it.. I will just check with someone else real quick.
EDIT: Oh.. I feel stupid. It was in a claimed area.. Derp :P. Works now! :) Thanks.
@SyncCraft
It's like that by default, you don't need any permission to use the chests. Only to create them.