MCTrade
**Project is undergoing MAJOR changes. I'd suggest not downloading files from this project yet! I need to re-factor the code quite a bit! **
Check out my site for better formatting and more detail: http://fogest.com/mctrade-plugin/
- Making trading a tad bit easier
Web Interface preview can be seen here: http://fogest.com/mctrade/
Download:
http://dev.bukkit.org/server-mods/mctrade/files/
Description:
MCTrade is much like that of WebAuctionPlus which is a trading plugin, with a web interface. WebAuction is a great plugin, and works great on peaceful-nonpvp servers. WebAuctionPlus posses a huge security risk when used on a PvP server.
MCTrade has been designed with the intention to be used on a PvP server as there are multiple features (listed below), that prevent any forms of abuse. Of course MCTrade works fine for non pvp servers as well.
MCTrade is designed to making trading: simple, fast, and secure. No one likes working hard for an item and then getting scammed by some jerk. With MCTrade you don't need to worry about that! All you do is, type in a simple command stating how much of the item you are selling, and how much of the item you are holding do you want to sell.
From there you can go online and view currently open trades and then go in game and purchase them via a simple command. There even is a configurable tax in place, to even further prevent some forms of abuse by using the trade system to store items.
Security:
Some of the features in the plugin to prevent abuse are:
- Tax on items(configurable) Attempts to make trading and then buying later on alt not worth the cost
- Player cannot accept their own trade or close their trade, though an admin can do this if needed.
- Trades can be closed by admins and have the option to return the items and tax OR to not give this back
- Trades can be deleted by admins, which removes them from display on the webpage and prevents them from being accepted and giving rep.
- Admins can monitor trade stats from the Admin Control Panel and also view players stats in game.
- Rep based system for users which will come into play in the future.
- Players must create an account, linking them to their trades which allows for easy monitoring.
- Accounts must be verified preventing users from putting in another users Minecraft Name
Commands:
/mctrade <item price> [item amount] Basic command to used to create a trade.
/mctrade accept <trade id> Command used to accept an existing trade.
/mctrade verify Command used in the website verification process to verify a user is who they say they are.
/trade Command used to administrate trades.
Permissions:
mctrade.* Gives access to all commands.
mctrade.mctrade Gives access all the /mctrade commands.
mctrade.trade.* Gives access to /trade which is an admin based command meant to administrate trades! As of now you may only give a user all of the /trade commands, eventually when more commands are added for the /trade command then this will be changed.
Configuration:
The configuration is explained in the setup but the examples are quite useful. The examples explain the variables:
Examples: http://fogest.com/mctrade-plugin/#examples
Setup:
- Place the file named MCTrade.jar in your plugins folder.
- Extract the folder named web and navigate into the php folder in there.
- Once in the php folder open config.php with some kind of text editor.
- Simply edit the fields with your database information. The config already contains examples, simply change those values, while making sure to leave the data in the quotation marks!
- You can now upload the folder labeled web to a directory on your website (probably using some sort of ftp client). Note, you can rename it the folder name to something other than web.
- Optionally; you can edit the logo (please leave the rest unless you ask for permission), by navigating to "layout\styles\images\blue\logo.png" in the web folder. Simply remove logo.png and put in your own logo labeled logo.png
- Now that the simple web part is done you now want to generate the plugin config. To do this simply restart the server (step 1 must have been done already).
- Now you should see a new folder in your plugins folder called "MCTrade", go into that folder and you should also see a folder called "config.yml". Open up this file using some kind of text editor.
- You now want to edit this file.
Examples: http://fogest.com/mctrade-plugin/#examples
Code:
This project is available on GitHub, feel free to make pull requests, or even PM me and we can discuss you being added as a contributor if you really want to help! Click the image below to be taken to the Github repo.
Credits:
WebAuctionPlus - Used a few bits of code. Specifically code relating to storing enchants in the database. http://dev.bukkit.org/server-mods/webauctionplus/
@dfdgsdfg
They make an account so that they can view there own open and closed trades. The account only needs to be made once in game and really is not that big of a deal I hope. The only thing they need to do to create an account is type in a command with some password. They don't need to use the account online if they don't want to.
@fogest
Thanks your dev version. I'm testing it.
And I have another question. Why people make account at first time? I think MCTrade's good part is to make quite simple deal and to have also simple interact with web part.
@deleted_7536780
I could, but I also have the testing version of it on my website: http://fogest.com/test/
Still a lot I need to do on there though, such as displaying the items image, durability bar for tools, and a few other things.
@fogest
can we get a screenshot?
@deleted_7536780
Well, by tad under featured, I think you can basically just say it is featureless. The new version features a totally different looking site, with DataTables, allowing for a lot better sorting, pagination and sorting.
Now, I'm no web dev here, nor am I am I most the most skilled in programming (yet), so making this project at the same level that WebAuction is at, is going to take time.
@fogest
But the current GUI on the web look a tad under featured. compared to WA
http://fogest.com/mctrade/
@deleted_7536780
Major update is coming soon. Once the major update is finished it should put this in a "release" state. There shouldn't be any bugs, and if there are, they will be fixed fast.
Edit: I highly suggest not wasting time updating yet, until that version.
Before i'd ever consider using this it would have to have a much more friendly UI on the web end, pictures of the items etc.. and more frequent updates to get bugs fixed.
@dfdgsdfg
Well if you want to see if you can resolve the DataTables error I'm having you could do that. That is really all that is holding my progress up at this point.
Here is my question I made on StackOverFlow: http://stackoverflow.com/questions/14057459/datatables-uncaught-typeerror-cannot-read-property-length-of-undefined
Here is the code: https://github.com/Fogest/MCTrade/tree/v1.1/web_test
And here the test website: http://fogest.com/test/
And since you are asking, here is the dev build of the plugin: https://dl.dropbox.com/u/9099649/MCTrade_DEV.jar
Now remember that is the dev build! There could be errors, but there shouldn't be. Also the Dev build since it is a totally new version (1.1), there are many changes. The databases are changed, so if you had previous databases made, you will need to remove them, so that new tables are made.
But until I fix this DataTables problem, I can't release a new official update.
@fogest
If you don't mind, I would like to test your dev build plugin. Also I am try to make web page for MCTrade. If I did it, probably I contribute to your work.
@dfdgsdfg
I could only give a dev build of the plugin, as the web part is broken. This would allow people to correctly buy and sell still, minus the web part, which may make it hard to find items to buy.
@fogest
Can you give a dev build just for test?
@dfdgsdfg
The plugin is pretty much ready, it is just the website that is having some slight issues. I'm not web dev, so when I come across an error in using something new (DataTables), fixing the error is a lot of Googling and troubleshooting to fix these issues.
@fogest
Exactly. : )
Anyway I am waiting your major update. Thanks for your all works and attention.
@dfdgsdfg
So, you are saying you want it as an additional feature that may have some kind of option in the config to enable it?
Also, at this point I wouldn't advise using MCTrade, until I release the new version, as the web and plugin are having major updates!
@fogest
I didn't mean mailbox to be safe with PVP server.
It's not for safe. It just for fun and combinent. Buying item directly comes with my inventory is good. But also most of MO/MMO RPG games with PVP have some bank or their own mailbox in game world. Even some games can take bank or mailbox!
I just love your simple concept for trade.
@dfdgsdfg
This plugin is meant to be safe with PvP servers, do you think that using a mailbox will still allow me to prevent abuse? I'm not familiar with mailbox so I just don't know. It just seems like it could be abused on PvP servers.
@fogest
I have some suggestion.
mailbox is nice plugin for item based economy server. Can we collaborate with mailbox?
@iancarroll
The login system is totally flawed. I have totally changed the website. It is now much more dumb downed. It also has the verification methods removed. You no longer can make an account from the site. You must instead use an in game command to create the account. This method is much easier and no email is required.
The new site also will use Twitter Bootstrap and Data tables to give the fastest experience. The problem right now occurs with the data tables. I'm trying to use a ajax call and JSON output. I'm a total noob with web stuff and am now stumped.
You mentioned you were a web Dev. I was wondering if you'd like to help develop the web end so that I can focus on the plugin more.