WebAuctionPlus

WebAuctionPlus 1.1.3

WebAuctionPlus - eBay for Minecraft!

A minecraft/bukkit shop plugin for your website! This is a rewrite of the original WebAuction with many new features and improvements. I've made to many improvements to the code to list on one page. Many of my plans require big changes and a lot of new code. As with any new code, bugs are to be expected, so please bare with me and report any bugs you come across.

Note: It is strongly recommended you backup your database before using or updating this plugin. Some of the bug fixes and performance improvements I'm making require big changes to the database. The WebAuctionPlus plugin will convert and update the database automatically the first time it's run.

New virtual inventory MailBox has been added with the update of Minecraft 1.3 and WebAuctionPlus 1.1. When a player right clicks on a MailBox sign, it opens up their virtual mailbox inventory and locks their website account to prevent item dups. When they close their mailbox, it updates their inventory and unlocks their website account. NOTE: This feature is new and running single threaded. If you experience lag related to this, I can see what I can do to make it multi-threaded.

Requires: Vault - http://dev.bukkit.org/server-mods/vault/

Requires: Web server with PHP and MySQL

Optional: SignLink - http://dev.bukkit.org/server-mods/signlink/

A few improvements by lorenzop

  • new ajax listing code (fast!)
  • new virtual inventory mailbox
  • all new web interface
  • all new item deposit/withdraw code
  • database connections are handled better
  • connection pool limits can be set in config
  • task update times are now configured in seconds
  • tasks can be disabled by setting the update frequency to -1
  • new announcement system
  • added "/wa reload" and "/wa save" commands
  • accounts can be created or passwords changed from the console
  • multi-language support

To do

  • server shops (unlimited stock improved)
  • better support for vault economies
  • custom description for items being sold
  • wish list / auto sales
  • track all wa signs to prevent unauthorized signs

Youtube Videos

Languages

Currently supported languages

If you'd like this plugin translated to another language, feel free to download the en.yml file from the link above, translate it to your own language, and send it to me.

Signs

WebAuctionPlus signs can be created by placing a sign with [WebAuction], [WebAuction+], or [wa] on the first line. Case doesn't matter, the plugin will fix it for you.

Note: you cannot use the deposit mailbox sign while in creative mode. this shouldn't ever be needed in the normal operation of the plugin, so as a general protection, it's always denied.

Note: withdraw mailbox signs can now have a quantity of stacks on the last line, or leave it blank for all mail.

WebAuctionPlus Signs

  • %waTitle - items name
  • %waPrice - price each
  • %waSeller - sellers name
  • %waType - Buy Now or Auction

Source Code

Development Builds

Development Builds can be found at the link below. Development builds aren't approved by the bukkit team and they might be buggy.

Commands

  • /wa password <apassword> - Changes your Web Auction Plus account password, or creates an account if you don't have one. This command can also be used from console in the format: wa password <playername> <apassword> and short-hand aliases "pass" or "pw" can be used in place of "password". For example, /wa pw mypassword123
  • /wa mailbox - Opens the WebAuction mailbox.
  • /wa deposit <amount> - Deposit money into your Auction account.
  • /wa withdraw <amount> - Withdraw money from your Auction account.
  • /wa reload - This feature is currently broken and disabled. It will be working again soon.
  • /wa update - Forces recent signs to update. Also updates SignLink signs.
  • /wa version - Displays the current running version of Web Auction Plus.

Permission nodes

note: these may change at some point

  • wa.use.mailbox (use mailbox sign)
  • wa.use.deposit.money (use money deposit sign)
  • wa.use.withdraw.money (use money withdraw sign)
  • wa.use.command.mailbox (use the mailbox command)
  • wa.use.command.deposit (use the deposit command)
  • wa.use.command.withdraw (use the withdraw command)
  • wa.announcer.receive (can see auto announcements)
  • wa.password.create (can create a new account)
  • wa.password.change (can change their password for an existing account)
  • wa.canbuy (can buy from web auction)
  • wa.cansell (can sell with web auction)
  • wa.create.sign.mailbox (create mailbox sign)
  • wa.create.sign.deposit (create money deposit sign)
  • wa.create.sign.withdraw (create money withdraw sign)
  • wa.create.sign.shout (create a new auction shout sign)
  • wa.create.sign.recent (create a recent auction sign)
  • wa.webadmin (user account is admin on the website)
  • wa.remove (remove WA signs)
  • wa.reload (reloads the WebAuctionPlus config)

How to Install

Join us and chat some time on our irc channel. #webauctionplus on esper.net webchat.esper.net

Plugin Usage

Statistics

As I've said in comments, I don't agree with the mojang buyout. as much as I've enjoyed working on this plugin and want to see it continue, I'm no longer doing all the work. MarioG1 has stepped up to work on the plugin. I may still help somewhat if he wants, but I'm passing the torch to him as the lead. good luck, hope you write some good code and features.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of thedeadprince thedeadprince Jun 12, 2016 at 20:27 UTC - 0 likes

    Hi there i have got this plaugin and think it is an amazing idea.

    the only problems i have is im on 1.10 and just wanted to know if this will be updated to support 1.10

    Thanks Robert

  • Avatar of lorenzo_p lorenzo_p Mar 29, 2016 at 19:11 UTC - 1 like

    as for a 1.9 update, anyone willing to work on it?

    what needs to be done: mainly just adding new items and updating the default item pack. the .php file is just a specially formatted text file. figure out the item id's for new items and add the information to that file, and find or make some icon images, these can usually be found online. all images the same size and with a transparent background. changes to the java part of the plugin usually aren't needed, except for bug fixes. if anyone wants to submit a bug fix pull request, keep it simple and clean and maybe it'll be as easy for me as a single click to accept and merge.

    if you do submit a pull request on github, please keep it clean and properly formatted and free of errors. keep it focused on the intended changes and only change what needs to be changed. follow the existing format and be careful and maybe we can have a smooth pull request and a new update to the plugin.

    I did want to improve the economy support. this is some fun code to write, I worked on it more than once, but I've never submitted it to the master branch. it does make many changes all over the code, so as fun as it is, it must be done right to avoid breaking things. basically a scheduled task on the java side to accept transactions from a queue database table, and update a cache of the players current balance in the players database table. on the php side, check the players cached balance to be sure they have enough, then submit a + transaction to the queue for the seller and a - transaction for the buyer.

    anything else for the todo list? who wants to help with what? send me a pm or just send a pull request.

    Last edited Mar 29, 2016 by lorenzo_p
  • Avatar of lorenzo_p lorenzo_p Mar 29, 2016 at 18:47 UTC - 0 likes

    @yaralola: Go

    if you're having trouble connecting to mysql, and you're sure you set the host/user/pass correct, my guess is you're connecting to a remote server. if you are, then you must set the ip address of the remote server in mysql in the allowed remote hosts. by default mysql will only allow connections from localhost 127.0.0.1 and anything else you must explicitly set.

    @MTubeZ: Go

    morlanius
    Feb 15, 2016 at 21:26 - 0 likes Like
    If you are having an issue with the server shops throwing a null into sellerId here is a fix
    open file: /WebInterface/inc/classes/logSales.class.php.
    
    Look for the line that reads: public static function addLog($lo........ (and so on) Under this
    and above the $query line add the following line: if(!$sellerId){$sellerId = 'ServerShop';}
    
    I tried to make this as simple to follow as possible.
    

    @samueli5750: Go

    do you have any suggestions to make the /wa password command more user friendly? going back to the old way the command worked is less secure, so not an option to go back.

    @MrFrostmaul: Go

    hello mr frost, I don't think this has been asked specifically before. yes, you can change the names of items or the icon images to anything you want. if I remember this right, items that are renamed in game will also display on the website and will restore to the item when withdrawn.

    the tekkit item packs were an incredible amount of work to put together (thank TheNytangel for his hard work) but sadly as soon as the next version of tekkit came out, the item pack was far outdated. it becomes a huge task to keep that many items updated. I looked into automating it, to generate the lists of items and the icon images, but a bit more complicated than it sounds. to generate the images, you can't just copy and paste from the sprite sheets. many items have complicated geometry, which means we need a client mod to find and call the right class methods in the running mods themselves, generate the item icon image, then save it to a file. once this is done, it would be easy to generate new item packs for the latest mod-pack versions, or even for custom texture packs. a few clicks and upload to the web server. but getting there is difficult.

    @tazmast3r: Go

    there's a setting in the WA_Settings table of the database. look for the language line, I think the setting is fr for french, then you'll need to restart the mc server. the website will update to those changes immediately, although the multi-language feature hasn't been finished on the website.

    @tahrll: Go

    is there a bug ticket open for this? not sure when I can get around to looking at this, maybe someone else can.

  • Avatar of yaralola yaralola Mar 06, 2016 at 18:34 UTC - 0 likes

    Help me!!! I have the mysql settings put in correctly and it says that i can 't connect but the website does connect

  • Avatar of MTubeZ MTubeZ Mar 05, 2016 at 08:46 UTC - 0 likes

    Hello,

    plese fix the Server-Shop, it comes some troubles when I will sell or buy items on it. When I will buy anything it comes that trouble:

    MySQL ERROR - File: /var/customers/webs/ni892414_3/webauctionplus/inc/classes/logSales.class.php Line: 30 Column 'sellerId' cannot be null

    INSERT INTO `WA_LogSales` ( `logType`, `saleType`, `timestamp`, `itemType`, `itemId`, `itemDamage`, `itemTitle`, `enchantments`, `sellerId`, `buyerId`, `qty`, `price`, `alert` ) VALUES ( 'sale', 'server', NOW(), '', 264, 0, 'Diamond', '', NULL, '1', 1, 200, 0 )

    When I try to sell anything it comes that trouble:

    Fatal error: Call to a member function setItemQty() on a non-object in /var/customers/webs/ni892414_3/webauctionplus/inc/classes/servershop.functions.php on line 237

    Plese fix it or say what I had done wrong.

    Matze

  • Avatar of Joshii2201 Joshii2201 Mar 04, 2016 at 23:42 UTC - 0 likes

    Hello Do you update for a 1.9 version and are you working on a update for the website (maybe new features?)

  • Avatar of samueli5750 samueli5750 Feb 27, 2016 at 01:02 UTC - 0 likes

    the latest version is not user-friend... hope can let's us choose the /wa password pass .....the

  • Avatar of TheNytangel TheNytangel Feb 21, 2016 at 21:29 UTC - 1 like

    @MrFrostmaul: Go

    The item should work and display correctly, however, it might not be in alphabetical order.

    As for meta data, if you look in the "default" item pack, there are some examples of that being used, such as

      17=>array(
        0 =>array(
          'name'=>array(
            'en'=>'Oak Log',
            ''=>'',
            ''=>''),
          'icon'=>'Log_Oak.png'),
        1 =>array(
          'name'=>array(
            'en'=>'Pine Log',
            ''=>'',
            ''=>''),
          'icon'=>'Log_Pine.png'),
        2 =>array(
          'name'=>array(
            'en'=>'Birch Log',
            ''=>'',
            ''=>''),
          'icon'=>'Log_Birch.png'),
        3 =>array(
          'name'=>array(
            'en'=>'Jungle Log',
            ''=>'',
            ''=>''),
          'icon'=>'Log_Jungle.png'),
        -1=>array(
          'name'=>array(
            'en'=>'Unknown Log',
            ''=>'',
            ''=>''),
          'icon'=>'Log_Oak.png'),
      )
    

    for wood.

  • Avatar of MrFrostmaul MrFrostmaul Feb 21, 2016 at 21:14 UTC - 0 likes

    Hi, Sorry if this has been asked before, but if we change an items name or texture and then put in the auction house will it work and display correctly with the changed name and texture etc.?

    I have also seen in the item-pack the support for modded items with their Item id's, would something like this work for us, but using the meta data of an item instead?

    Many Thanks

  • Avatar of morlanius morlanius Feb 16, 2016 at 14:22 UTC - 0 likes

    @Grimmy423: Go

    Your credentials are not set up properly. Install SQL, create a user and database, grant user privileges on the database (eg: grant all privileges on <database> to 'username'@'localhost';

    http://mc.lifemud.com/images/mainbanner2.jpg

Inventory Method

  1. Choice:

  1. Results
  2. 1 comment

Facts

Date created
Apr 08, 2012
Categories
Last update
Jun 04, 2015
Development stage
Beta
Language
  • deDE
  • enUS
  • esES
  • frFR
  • ptBR
License
GNU General Public License version 3 (GPLv3)
Curse link
WebAuctionPlus
Downloads
35,389
Recent files

Authors