Jump to content

[PATCH] AuctionHouse Bot


Recommended Posts

PlayerBot wouldn't compile for me with skinners link. :(

make[3]: Entering directory `/opt/src/objdir/src/mangosd'
 CXXLD  mangos-worldd
../game/libmangosgame.a(Chat.o): In function `ChatHandler::getCommandTable()':
/opt/src/objdir/src/game/../../../src/game/Chat.cpp:679: undefined reference to `ChatHandler::HandlePlayerbotCommand(char const*)'
../game/libmangosgame.a(Group.o): In function `Group::RemoveMember(unsigned long long const&, unsigned char const&)':
/opt/src/objdir/src/game/../../../src/game/Group.cpp:312: undefined reference to `PlayerbotMgr::RemoveAllBotsFromGroup()'
../game/libmangosgame.a(Player.o): In function `Player::TeleportTo(unsigned int, float, float, float, float, unsigned int)':
/opt/src/objdir/src/game/../../../src/game/Player.cpp:1650: undefined reference to `PlayerbotMgr::Stay()'
../game/libmangosgame.a(Player.o): In function `Player::Update(unsigned int)':
/opt/src/objdir/src/game/../../../src/game/Player.cpp:1406: undefined reference to `PlayerbotAI::UpdateAI(unsigned int)'
/opt/src/objdir/src/game/../../../src/game/Player.cpp:1408: undefined reference to `PlayerbotMgr::UpdateAI(unsigned int)'
../game/libmangosgame.a(WorldSession.o): In function `WorldSession::SendPacket(WorldPacket const*)':
/opt/src/objdir/src/game/../../../src/game/WorldSession.cpp:98: undefined reference to `PlayerbotAI::HandleBotOutgoingPacket(WorldPacket const&)'
/opt/src/objdir/src/game/../../../src/game/WorldSession.cpp:100: undefined reference to `PlayerbotMgr::HandleMasterOutgoingPacket(WorldPacket const&)'
../game/libmangosgame.a(WorldSession.o): In function `WorldSession::LogoutPlayer(bool)':
/opt/src/objdir/src/game/../../../src/game/WorldSession.cpp:339: undefined reference to `PlayerbotMgr::LogoutAllBots()'
../game/libmangosgame.a(WorldSession.o): In function `WorldSession::Update(unsigned int)':
/opt/src/objdir/src/game/../../../src/game/WorldSession.cpp:293: undefined reference to `PlayerbotAI::HandleTeleportAck()'
/opt/src/objdir/src/game/../../../src/game/WorldSession.cpp:206: undefined reference to `PlayerbotMgr::HandleMasterIncomingPacket(WorldPacket const&)'
../game/libmangosgame.a(QuestHandler.o): In function `WorldSession::HandlePushQuestToParty(WorldPacket&)':
/opt/src/objdir/src/game/../../../src/game/QuestHandler.cpp:521: undefined reference to `PlayerbotAI::AcceptQuest(Quest const*, Player*)'
../game/libmangosgame.a(CharacterHandler.o): In function `CharacterHandler::HandlePlayerBotLoginCallback(QueryResult*, SqlQueryHolder*)':
CharacterHandler.cpp:(.text._ZN16CharacterHandler28HandlePlayerBotLoginCallbackEP11QueryResultP14SqlQueryHolder[CharacterHandler::HandlePlayerBotLoginCallback(QueryResult*, SqlQueryHolder*)]+0x11f): undefined reference to `PlayerbotMgr::OnBotLogin(Player*)'
../game/libmangosgame.a(ChatHandler.o): In function `WorldSession::HandleMessagechatOpcode(WorldPacket&)':
/opt/src/objdir/src/game/../../../src/game/ChatHandler.cpp:277: undefined reference to `PlayerbotAI::HandleCommand(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Player&)'
/opt/src/objdir/src/game/../../../src/game/ChatHandler.cpp:233: undefined reference to `PlayerbotAI::HandleCommand(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Player&)'

This is on linux.

Link to comment
Share on other sites

  • Replies 702
  • Created
  • Last Reply

Top Posters In This Topic

Does not work for me :mad:

Welcome to Git (version 1.6.5.1-preview20091022)

Run 'git help git' to display the help index.

Run 'git help <command>' to display help for specific commands.

Random@RANDOM-PC /c/Mangos (master)

$ git apply --check addon/AHBot/mangos-ahbot-9573.patch

error: patch failed: src/mangosd/mangosd.conf.dist.in:1362

error: src/mangosd/mangosd.conf.dist.in: patch does not apply

Random@RANDOM-PC /c/Mangos (master)

$

Heres my Mangos Version:

Version 0.16

* Under discussion.

* Upgrade to client version 3.3.2 (build 11403).

My Mangos Database:

UDB_0.11.6_Core_8734_SD2_1480

Then updated to 9539

I got ScriptDev2

Link to comment
Share on other sites

Does not work for me :mad:

Welcome to Git (version 1.6.5.1-preview20091022)

Run 'git help git' to display the help index.

Run 'git help <command>' to display help for specific commands.

Random@RANDOM-PC /c/Mangos (master)

$ git apply --check addon/AHBot/mangos-ahbot-9573.patch

error: patch failed: src/mangosd/mangosd.conf.dist.in:1362

error: src/mangosd/mangosd.conf.dist.in: patch does not apply

Random@RANDOM-PC /c/Mangos (master)

$

Heres my Mangos Version:

Version 0.16

* Under discussion.

* Upgrade to client version 3.3.2 (build 11403).

My Mangos Database:

UDB_0.11.6_Core_8734_SD2_1480

Then updated to 9539

I got ScriptDev2

Remove the config part and apply it manually ?

Link to comment
Share on other sites

Welcome to Git (version 1.6.5.1-preview20091022)

Run 'git help git' to display the help index.

Run 'git help <command>' to display help for specific commands.

Random@RANDOM-PC /c/Mangos (master)

$ git am Addon/AHbot/mangos-ahbot-9573.patch

Patch format detection failed.

Random@RANDOM-PC /c/Mangos (master)

$

:confused:

Well i may assume that you want me to edit the C++ files and remove the part but i only got the patch file so ...:P

Link to comment
Share on other sites

Open the patch file in a plain-text editor, like Notepad++, or use TortoiseMerge to make your changes. Find the section in the patch file for mangosd.conf.dist.in. Cut that portion out and save it into a temporary text document. Save your AHBot patch file.

Now, go into your mangos repo, find the file mangos.conf.dist.in, open it in your editor, then paste the code you saved in your temporary document into the mangos.conf.dist.in file. You should get something that looks like the last few lines in my file....

Network.Threads = 1
Network.OutKBuff = -1
Network.OutUBuff = 65536
Network.TcpNodelay = 1

###################################################################################################################
# AUCTION HOUSE BOT SETTINGS
#
#    AuctionHouseBot.EnableSeller
#        Enable/Disable the part of AHBot that puts items up for auction
#    Default 0 (disabled)
#
#    AuctionHouseBot.EnableBuyer
#        Enable/Disable the part of AHBot that buys items from players
#    Default 0 (disabled)
#
#    Auction House Bot character data
#        AuctionHouseBot.Account is the account number (in realmd->account table) of the player you want to run as the auction bot.
#       AuctionHouseBot.GUID is the GUID (in characters->characters table) of the player you want to run as the auction bot.
#    Default: 0 (Auction House Bot disabled)
#
#    AuctionHouseBot.VendorItems
#        Include items that can be bought from vendors.
#    Default 0
#
#    AuctionHouseBot.LootItems
#        Include items that can be looted or fished for.
#    Default 1
#
#    AuctionHouseBot.OtherItems
#        Include misc. items.
#    Default 0
#
#    AuctionHouseBot.Bonding_types
#        Indicates which bonding types to allow seller to put up for auction
#            No_Bind
#             Default 1
#            Bind_When_Picked_Up
#             Default 0
#            Bind_When_Equipped
#             Default 1
#            Bind_When_Use
#             Default 1
#            Bind_Quest_Item
#             Default 0
#
#    AuctionHouseBot.ItemsPerCycle
#        Number of Items to Add/Remove from the AH during mass operations
#    Default 200
#
#    AuctionHouseBot.UseBuyPriceForSeller
#        Should the Seller use BuyPrice or SellPrice to determine Bid Prices
#    Default 0 (use SellPrice)
#
#    AuctionHouseBot.UseBuyPriceForBuyer
#        Should the Buyer use BuyPrice or SellPrice to determine Bid Prices
#    Default 0 (use SellPrice)
#
#    All other settings have been moved to sql
#
###################################################################################################################

AuctionHouseBot.EnableSeller = 0
AuctionHouseBot.EnableBuyer = 0
AuctionHouseBot.Account = 0
AuctionHouseBot.GUID = 0
AuctionHouseBot.VendorItems = 0
AuctionHouseBot.LootItems = 1
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 = 200
AuctionHouseBot.UseBuyPriceForSeller = 0
AuctionHouseBot.UseBuyPriceForBuyer = 0

###################################################################################################################
# CONSOLE AND REMOTE ACCESS
#
#    Console.Enable
#        Enable console
#        Default: 1 - on
#                 0 - off

This is really basic, no-brain stuff, guys. Use that gray matter for more than just skull-filler! :rolleyes:

Link to comment
Share on other sites

Haha yeah! When you know what to do!

Thanks :)

P.S. is there is only me that click on "reply thread" button to type and instead of clicking on "post quick reply", i instincly click again on "reply to thread" and loose all what i've just type :angry:

I'm gonna try to use more often that thnks button :P

Link to comment
Share on other sites

@temporary: m8, this isn't a "I want to learn what is a patch file" or "how can I apply a patch file" thread. Therefor MaNGOS has a special forum section and many questions can be solved with good old google. For this time I wont be rude and just tell you to f*cking google it: The plus in front of a patch file tells the programm "patch" that this line shall be created, a minus tells the programm to delete a line. Now if you open a patch file with an editor you can see a bunch of pluses and minuses with some line without plus and minus. In case of the sql file: the complete sql file has to be created, so every line of this file has a plus in front of it. You can get this sql file manually if you cut out the lines with a plus in front, throw it into a new txt file, and erase this pluses. Afterwards you name that file "characters_auctionhousebot.sql" and have done manually what the programm patch does automated.

If you have any further questions on how to apply a patch file or what a patch file does or can do, please use the appropriate forum section and stop monologizing in this thread.

Hth and thanks

Skirnir

Link to comment
Share on other sites

The steps are really quite simple. Assuming you have correctly merged and compiled your server source with AHBot, plus installed the required SQL files into your database...

If you have already completed steps 1, 2, 3, skip to 4. If you have not completed any of the first three steps you must first disable your AHBot in your mangosd.conf file!

* Using the MaNGOS server console, create a player account for your Auction House Bot.

* Log onto your server with your game client, using the account you just created.

* Create a character. This will be your AHBot. Enter the world to generate the character's data for the database. You do not need to play this character, just log in with it once. You can now log out.

* Close your client and shut down your server.

* Activate the AHBot in the mangosd.conf file, add the account ID number and character's GUID number. These values can be found in your 'characters' database under the table labeled 'characters'. The first two columns contain the GUID and Account ID. The fourth column will contain the character name.

* Apply the settings you choose for your AHBot in mangosd.conf.

* Apply the needed settings for MinPrice, MaxPrice, and so forth... into your auctionhousebot table, which is located in your 'characters' database.

* Restart your server. Allow a few minutes for the AHBot to initialize and execute its database operations to stock the Auction House and create auctions.

* Log in with your game client and enjoy the benefits of a fully working Auction House for your low-population server.

Keep in mind that you will need to exercise some restraint when choosing how many items the AHBot will auction at each of the Auction Houses. Depending upon the hardware specs and OS used for your MaNGOS server, assigning very large numbers of items may cause severe lag when the AHBot is updating its auctions. This is most noticeable when players report getting "stuck" at the character selection screen, or just after the login screen, for several minutes. A sensible number is 5,000 items or less. A very powerful computer may be able to handle 10,000 items or more.

Mostly you just need to take your time, carefully read all documentation provided, and follow the instructions precisely. Trying to rush through it or skip steps is going to cause nothing but trouble. Naicisum's AHBot has very well written instructions that should be more than adequate for anyone if they pay attention.

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