Jump to content

[PATCH] AuctionHouse Bot


Recommended Posts

@Gimp

The reason why these items are not sold is due to their prices in the mangos database, specifically the BuyPrice and SellPrice columns in the item_template table. In addition, the AHBot option AuctionHouseBot.UseBuyPriceForSeller, is used to determine which column is used during initial loading to determine which price is to be used, if the value of this option is 0 then the SellPrice column is used, if its 1 the BuyPrice column is used. If an item has a value of 0 in the column that is used, the AHBot will skip over this item because any pricing formula used against 0 will be 0 and we dont want free items on the AHBot now. This applies for all item types.

On the specifics you requested above, heres how you can examine your DB using this query.

SELECT entry, name, buyprice, sellprice FROM <MANGOS DB>.item_template WHERE bagfamily = 64 AND class = 7;

Using the query above you can determine what will sell and not sell based on the configuration parameters outlined above. At present you have a couple of options, you can switch the config value for the AHBot, but please recognize how this will change the AH prices, or you can manually update and set a price for those items that have a current value of 0.

The next version of the AHBot will have an override table for individual items so you dont have to modify the values of this table, I know this is a heavily requested feature and its coming! :)

I hope this helps address your issue.

Link to comment
Share on other sites

  • Replies 702
  • Created
  • Last Reply

Top Posters In This Topic

Hey Naicisum, thank you for the further developing on this nice patch..

just one question..

is it possible to add a option to the auctionhouse bot config where you can set the itemlevel which the bot accept for put it into the auctionhouse? Cause, the testers can buy highlevelitems like ulduar boss drops or other stuff..

regards

LickedLurk

Link to comment
Share on other sites

Hey Naicisum, thank you for the further developing on this nice patch..

just one question..

is it possible to add a option to the auctionhouse bot config where you can set the itemlevel which the bot accept for put it into the auctionhouse? Cause, the testers can buy highlevelitems like ulduar boss drops or other stuff..

regards

LickedLurk

Yes Naicisum trinity AHBOT have this function, its very useful for servers :)

Link to comment
Share on other sites

Hmmmm... not sure what I'm doing wrong, but I don't see any items appearing in my Auction House (I've checked in Stormwind and the auctionhouse table in the characters database is empty too).

This is my first attempt at using the AHBot. I created a new account and character to use specifically for the Auction House with GUID 4 and Account 7, and after patching then building MaNGOS I applied the characters_auctionhousebot.sql to my characters database.

MaNGOS version 9045, no other third-party patches, UDB 0.11.6 (386).

Database Settings:

INSERT INTO `auctionhousebot` VALUES
(2,'Alliance',0,0,8,24,0,27,12,10,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,70,100,80,100,75,100,80,100,80,100,80,100,0,0,3,2,1,1,1,1,1,5,12,15,20,22,1,1),
(6,'Horde',0,0,8,24,0,27,12,10,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,70,100,80,100,75,100,80,100,80,100,80,100,0,0,3,2,1,1,1,1,1,5,12,15,20,22,1,1),
(7,'Neutral',0,0,8,24,0,27,12,10,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,70,100,80,100,75,100,80,100,80,100,80,100,0,0,3,2,1,1,1,1,1,5,12,15,20,22,1,1)
;

Config Settings:

AuctionHouseBot.EnableSeller = 1
AuctionHouseBot.EnableBuyer = 1
AuctionHouseBot.Account = 7
AuctionHouseBot.GUID = 4
AuctionHouseBot.VendorItems = 1
AuctionHouseBot.LootItems = 1
AuctionHouseBot.OtherItems = 1
AuctionHouseBot.No_Bind = 1
AuctionHouseBot.Bind_When_Picked_Up = 0
AuctionHouseBot.Bind_When_Equipped = 1
AuctionHouseBot.Bind_When_Use = 1
AuctionHouseBot.Bind_Quest_Item = 0
AuctionHouseBot.ItemsPerCycle = 200
AuctionHouseBot.UseBuyPriceForSeller = 0
AuctionHouseBot.UseBuyPriceForBuyer = 0

Server Log:

2009-12-24 11:58:00 Game Event system initialized.
2009-12-24 11:58:00 Initialize AuctionHouseBot...
2009-12-24 11:58:03 AuctionHouseBot:
2009-12-24 11:58:03 loaded 9 grey trade goods
2009-12-24 11:58:03 loaded 555 white trade goods
2009-12-24 11:58:03 loaded 68 green trade goods
2009-12-24 11:58:03 loaded 29 blue trade goods
2009-12-24 11:58:03 loaded 3 purple trade goods
2009-12-24 11:58:03 loaded 1 orange trade goods
2009-12-24 11:58:03 loaded 0 yellow trade goods
2009-12-24 11:58:03 loaded 1286 grey items
2009-12-24 11:58:03 loaded 2751 white items
2009-12-24 11:58:03 loaded 5481 green items
2009-12-24 11:58:03 loaded 1733 blue items
2009-12-24 11:58:03 loaded 732 purple items
2009-12-24 11:58:03 loaded 0 orange items
2009-12-24 11:58:03 loaded 0 yellow items
2009-12-24 11:58:03 AuctionHouseBot [AHBot-004-HotFix-06] is now loaded
2009-12-24 11:58:03 AuctionHouseBot updated by Naicisum (original by ChrisK and Paradox)
2009-12-24 11:58:03 AuctionHouseBot now includes AHBuyer by Kerbe and Paradox
2009-12-24 11:58:03 WORLD: World initialized
2009-12-24 11:58:03 SERVER STARTUP TIME: 1 minutes 20 seconds

Link to comment
Share on other sites

Is there any way to link this repo with Mangos Master so we do not always need to wait for you to merge latest Mangos Patches... or is it recommended to just wait for you to always update the repo?

I am always scared this repo will be left for long periods of time and will not be kept up to date with latest Mangos Master.

I wish AHBOT could be finished up so Vlad could add it to Mangos Core. He said the only major issue was the fact we required a Player for the AHBOT. What he would like to see is a NPC (Creature) list the items in the AH. Other then that they do like AHBOT and would seriously consider adding it to the core once this issue is resolved.

Link to comment
Share on other sites

@X-Savior: Well, there is an alternative. On page1 of this topic was shown how to create a patch file out of the auctionhouse git branch.

I made this about the time I spotted this topic. Next I applied it to my local mangos git branch. After that I created a new branch called "ahbot". Now everytime I build mangos, I first check out mangos git repo, with

git pull

next I switch to my branch

git checkout ahbot

and merge

git merge origin/master

. After that I build mangos. And after building I switch back

git checkout master

.

Whenever "git merge" returns errors, I see if my poor C++ understanding helps me, else I see if the problem was discussed here, or if theres a new "hotfix" at Nacs. repo. So at least on linux this variant has proven it's usability.

Regards

Skirnir

Link to comment
Share on other sites

Im sorry for the stupidity of this post in advance!

I have followed the instructions at the top of this thread and I can get to the patch part..

it succeeds after the command is typed in but the patch it creates is 0kb and empty?

Also where do i get the Sqls to run that creates the tables needed for it and such as i didnt see any of them in the Ahbot folder after checking it out?

Link to comment
Share on other sites

Hello

i'm sorry for this message, but i've set the AHBot on 9077 mangos ud386 etc

This work perfectly but not as intended

It sell as i say 200 itme max

BUT ... where can i configure wich item to sell, and the price, and when add them to AH?

cause for the moment he sell 200 random item etc ... i wanna add fixed value ..

like coper ore 5 packet of 20 ... fr 10pa each pack ..

smth like that

Is it possible?

Thank for help

Link to comment
Share on other sites

Sounds like you already merged AHBot with your Master branch. It would have done so if you used the "git pull" command. "pull" does a fetch AND merge. You just need to do a fetch without the merge if you want AHBot in a seperate branch from your MaNGOS master. The you'd run the commands for creating a patch.

Here's how it worked for me:

First I fetch and create my MaNGOS master branch. Then I do this to individually fetch and set branches for each patch I want...

git add remote -f -t ahbot ahbot git://github.com/Naicisum/mangos.git
                             ^       ^
                             |        |
  remote branch name      my local branch name

The above command will fetch the ahbot without merging it into your master.

Now you create a branch for the ahbot blob you just fetched and set it to track the remote repo for AHBot...

git branch ahbot --track ahbot/ahbot

And there you have it!

Now checkout the ahbot...

git checkout ahbot

Then run the diff to get your patch...

git diff master ahbot>ahbot.patch

And you should now see the patch file, named 'ahbot.patch', in the directory. Save this patch to a folder outside your mangos repo for now.

So go checkout your master...

git checkout master

Now drop the patch file back in. Then apply the 'ahbot.patch' file using the "git apply" command.

I never use the patch files for AHBot. Simply checking out ahbot and then running "git merge master" has always worked flawlessly for me.

I hope this helps. I'm not a git master but I learned from the best. ^_^

Link to comment
Share on other sites

Thanks for this, it works great on the master branch, but I would like to compile this patch on the mangos-0.12 branch. There have been enough changes that the diff patch file method described in this thread doesn't work anymore.

Has anyone else been able to get this to compile with mangos-0.12? I'm running mangos-0.12 build 9095 with scriptdev2 1537.

Any tips, suggestions, or any other known threads on making these two work together?

Keep up the good work!

Link to comment
Share on other sites

Thanks for this, it works great on the master branch, but I would like to compile this patch on the mangos-0.12 branch. There have been enough changes that the diff patch file method described in this thread doesn't work anymore.

Has anyone else been able to get this to compile with mangos-0.12? I'm running mangos-0.12 build 9095 with scriptdev2 1537.

Any tips, suggestions, or any other known threads on making these two work together?

Keep up the good work!

git://github.com/reno/mangos-patched.git ahbot-0.12

Link to comment
Share on other sites

Any chance on porting over Trinity's AHBot? Almost half of their Trinity config is dedicated to AHBot settings, it's ridiculous how much you can manipulate it.

I have been hoping for this for quite some time.

Also, I hope some updates to AHbot soon as I recently had AHBOT practically destroy my Characters DB. I managed to salvage it by manually deleting all the items ion the Auction House. Every time I went to load the core (Even without AHBOT compiled into it it) would crash shortly after loading. Now I have removed AHBot and all items in AH and my Realm is running as solid as a rock. Possibly we could get an up to date repo again and I might consider trying it again. Quite honestly I would like to see AHbot possibly finished up properly and drop the Player Account requirement as Vladimir has stated several times. This is the ONLY thing holding back AHBot from being Integrated into the core. He has suggested several times to have it use a Creature (NPC) to list the items in the AH.

Link to comment
Share on other sites

I have been hoping for this for quite some time.

Also, I hope some updates to AHbot soon as I recently had AHBOT practically destroy my Characters DB. I managed to salvage it by manually deleting all the items ion the Auction House. Every time I went to load the core (Even without AHBOT compiled into it it) would crash shortly after loading. Now I have removed AHBot and all items in AH and my Realm is running as solid as a rock. Possibly we could get an up to date repo again and I might consider trying it again. Quite honestly I would like to see AHbot possibly finished up properly and drop the Player Account requirement as Vladimir has stated several times. This is the ONLY thing holding back AHBot from being Integrated into the core. He has suggested several times to have it use a Creature (NPC) to list the items in the AH.

I agree with x-savior and Vlad here.. this really SHOULD be an NPC and not an acct based system... X, it corrupted your char inventory ssytem? damn... that may be what happened to mine a while back ago. I got it settled recently without deleting anything but managed to totally shit out a few char accts for unknown reasons

EDIT: come to think of it... it was chars that bought something from the ahbot that ended up getting corrupted data fields

Link to comment
Share on other sites

First thank you Naicisum for continuing ChrisK and Paradox's AHBot as it is So usefull for small servers/single players.

After upgrading from Mangos 8180 (where both buyer and seller worked fine in all 3 AH Houses) to 9086 the buyer has stoped buying. it's the same issue SyriosOne and Moandor had/have

I can confirm.

on my server Horde and ally auctionshouses don't buy anything only Goblin AH.

Using latest AHBot+Vellums+SD2+Mangos

Then upgraded to 9112 to see if that would fix the issue but no. Also if i allow twosided auctions the alliance AH will buy as everything is the Neutral.

AHBot SQL:

INSERT INTO `auctionhousebot` VALUES
(2,'Alliance',15000,20000,4,24,0,30,14,5,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,50,100,60,100,55,100,60,100,80,100,80,100,0,0,0,10,5,1,1,1,1,14,18,46,20,22,1,1),
(6,'Horde',15000,20000,4,24,0,30,14,5,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,50,100,60,100,55,100,60,100,80,100,80,100,0,0,0,10,5,1,1,1,1,14,18,46,20,22,1,1),
(7,'Neutral',15000,20000,4,24,0,30,14,5,1,0,0,0,10,30,8,2,0,0,100,150,150,250,800,1400,1250,1750,2250,4550,3250,5550,5250,6550,70,100,50,100,60,100,55,100,60,100,80,100,80,100,0,0,0,10,5,1,1,1,1,14,18,46,20,22,1,1);

AHBot Config:

AuctionHouseBot.EnableSeller = 1
AuctionHouseBot.EnableBuyer = 1
AuctionHouseBot.Account = 15
AuctionHouseBot.GUID = 27
AuctionHouseBot.VendorItems = 1
AuctionHouseBot.LootItems = 1
AuctionHouseBot.OtherItems = 1
AuctionHouseBot.No_Bind = 1
AuctionHouseBot.Bind_When_Picked_Up = 0
AuctionHouseBot.Bind_When_Equipped = 1
AuctionHouseBot.Bind_When_Use = 1
AuctionHouseBot.Bind_Quest_Item = 0
AuctionHouseBot.ItemsPerCycle = 100
AuctionHouseBot.UseBuyPriceForSeller = 0
AuctionHouseBot.UseBuyPriceForBuyer = 0

Server Log:

2010-01-07 17:19:08 Initialize AuctionHouseBot...
2010-01-07 17:19:11 AuctionHouseBot:
2010-01-07 17:19:11 loaded 9 grey trade goods
2010-01-07 17:19:11 loaded 555 white trade goods
2010-01-07 17:19:11 loaded 68 green trade goods
2010-01-07 17:19:11 loaded 31 blue trade goods
2010-01-07 17:19:11 loaded 3 purple trade goods
2010-01-07 17:19:11 loaded 1 orange trade goods
2010-01-07 17:19:11 loaded 0 yellow trade goods
2010-01-07 17:19:11 loaded 1286 grey items
2010-01-07 17:19:11 loaded 2751 white items
2010-01-07 17:19:11 loaded 5481 green items
2010-01-07 17:19:11 loaded 1733 blue items
2010-01-07 17:19:11 loaded 779 purple items
2010-01-07 17:19:11 loaded 0 orange items
2010-01-07 17:19:11 loaded 0 yellow items
2010-01-07 17:19:11 AuctionHouseBot [AHBot-004-HotFix-06] is now loaded
2010-01-07 17:19:11 AuctionHouseBot updated by Naicisum (original by ChrisK and Paradox)
2010-01-07 17:19:11 AuctionHouseBot now includes AHBuyer by Kerbe and Paradox

Link to comment
Share on other sites

I have been hoping for this for quite some time.

Also, I hope some updates to AHbot soon as I recently had AHBOT practically destroy my Characters DB. I managed to salvage it by manually deleting all the items ion the Auction House. Every time I went to load the core (Even without AHBOT compiled into it it) would crash shortly after loading. Now I have removed AHBot and all items in AH and my Realm is running as solid as a rock. Possibly we could get an up to date repo again and I might consider trying it again. Quite honestly I would like to see AHbot possibly finished up properly and drop the Player Account requirement as Vladimir has stated several times. This is the ONLY thing holding back AHBot from being Integrated into the core. He has suggested several times to have it use a Creature (NPC) to list the items in the AH.

I had the same problem a while back. It ended up being something along the lines of AHBot running out of items to post. Here is a config sample to show exactly what i mean:

This would crash it, anywhere from 5 minutes afterstart, to 30 minutes:

AuctionHouseBot.EnableSeller = 1

AuctionHouseBot.EnableBuyer = 1

AuctionHouseBot.Account = 5

AuctionHouseBot.GUID = 1

AuctionHouseBot.VendorItems = 0 <-- notice these zeros

AuctionHouseBot.LootItems = 0 <--

AuctionHouseBot.OtherItems = 0 <--

AuctionHouseBot.No_Bind = 1

AuctionHouseBot.Bind_When_Picked_Up = 0

AuctionHouseBot.Bind_When_Equipped = 1

AuctionHouseBot.Bind_When_Use = 1

AuctionHouseBot.Bind_Quest_Item = 0

AuctionHouseBot.ItemsPerCycle = 900

AuctionHouseBot.UseBuyPriceForSeller = 0

AuctionHouseBot.UseBuyPriceForBuyer = 0

After changing it to:

AuctionHouseBot.EnableSeller = 1

AuctionHouseBot.EnableBuyer = 1

AuctionHouseBot.Account = 5

AuctionHouseBot.GUID = 1

AuctionHouseBot.VendorItems = 1

AuctionHouseBot.LootItems = 1

AuctionHouseBot.OtherItems = 1

AuctionHouseBot.No_Bind = 1

AuctionHouseBot.Bind_When_Picked_Up = 0

AuctionHouseBot.Bind_When_Equipped = 1

AuctionHouseBot.Bind_When_Use = 1

AuctionHouseBot.Bind_Quest_Item = 0

AuctionHouseBot.ItemsPerCycle = 900

AuctionHouseBot.UseBuyPriceForSeller = 0

AuctionHouseBot.UseBuyPriceForBuyer = 0

It all works fine.

It seems like a silly limitation, but if you have the maxitems set high, i guess it doesn't insert dupes? So it gets confused i guess. If anyone has more input on that, i'd like to hear it....

Link to comment
Share on other sites

I've also had issues with tables in the 'characters' DB becoming corrupted due to the AHBot. Usually, this simply requires doing an optimize/repair operation on the affected tables but it can be a bit of a pain to do this several times in a day when your players are in the mood to ransack the Auction House after loading up on gold from a big dungeon or raid.

Bear in mind this was a while back, before the last Hotfix, but I still do regular optimize/repair on the DB, at least daily, to minimize AHBot's mangling of the tables.

As for porting Paradox's AHBot from Trinity... I thought one of the initial ideals of that group was to make patches available for backporting/merging to MaNGOS, when an acceptable fix or improvement was working, in order to contribute to the betterment of the entire MaNGOS community?

No insult intended and far be it from me to tell Naicisum how to develop his own work. Perhaps you can review Paradox's current code for ideas to improve AHBot for MaNGOS? If necessary, maybe someone else can provide the patch and sql code for study. It was enough trouble to learn the basics of Git! I'm not about to jump into mercurial when I'm already more than satisfied with the work of all those contributing to MaNGOS. Maybe some of you others can help out by porting that fork over and merging it with a new dev branch for AHBot?

Honestly, the current AHBot incarnation has some rough edges but I'm still very happy with it. Thanks to Naicisum's continued hard work, my nephews can enjoy using the Auction House to its fullest both buying and selling, something that was just not possible on a server with less than 10 players not so very long ago. Anyone that creates and maintains a major improvement to the MaNGOS core has my deepest admiration. It's very frustrating for me that I just don't know enough C++ so I could help out or even create my own contributions to MaNGOS.

Link to comment
Share on other sites

After upgrading from Mangos 8180 (where both buyer and seller worked fine in all 3 AH Houses) to 9086 the buyer has stoped buying. it's the same issue SyriosOne and Moandor had/have

My players just reported that if someone post an enchantment material such as Infinite Dust, which has no SellPrice, or item has no BuyPrice, buyer will stop buying ANY item until this item expires..........

Anyone wanna look into this?

Link to comment
Share on other sites

My players just reported that if someone post an enchantment material such as Infinite Dust, which has no SellPrice, or item has no BuyPrice, buyer will stop buying ANY item until this item expires..........

Anyone wanna look into this?

That is not what has happened to my auction houses as all previous auctions were deleted, also the auctions have been expired several times. all items I (as I am using the server solo atm) have posted DO have a sell price and buyer is set in config to use sell price.

However is concernig that the buyer can be locked out by posting an item with no buy/sell price

Link to comment
Share on other sites

Hi,

Thank you very much reno for maintaining the 0.12 branch, I was able to get ahbot up and running great on mangos 0.12 build 9126 with scriptdev 1537 and the TBCDB.

No problems so far, though I wish I had more control over the items that are posted - I don't want doom lork kazaak drops posted, or high end sunwell items such as hard khorium band, etc. Limiting items via item might be nice, or by type - for example, I would be fine with the patterns from sunwell dropping, but the fully made end product takes some of the fun out of our fairly blizzlike server.

Regardless - thanks to both of you for a fabulous addition to mangos!

Keep up the good work, Naicisum.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use