Last update: Patcher: 2012.12.15 Profile: 2012.12.14 Bugs: Patcher: Works with latest TSM version only Uninstall by running the patcher again. Virus scan 1 Virus scan 2 NSIS Installer source file included Todo: Randomize path or atleast AH NPC Implement restock (pbank/gbank, craft from AH, craft from farming mats) Use TSM Auto-Mail button Use GetAll scan Make it use HBRelog Some error handling and debugging features Description: This profile works with the famous TradeSkillMaster addon, and tries to make use of this great addon from a botting POV. What the bot will do, when you start it: Runs to nearest AH, and does cancelling Even if there is nothing that had been cancelled, it runs to the mailbox and fetches mail Keeps running between AH and mailbox, posting items on the AH, until mailbox is emptied Starts a random timer 10-15minutes, when expired the bot will start again. Features: Auto-cancel auctions which you've been undercut Auto-fetch mails with the use of TSM_Mailing Auto-post auctions from your bags and mailbox Instructions: Download profile Revert to / Install original TSM Download and run patcher Use TradeSkillMaster_Mailing as mailbox addon Set appropriate macros Keyboard macro: F1 ( /click TSMAuctioningCancelButton ) and F2 (/click TSMAuctioningPostButton ) Mousewheel macro: use TSM built-in mousewheel macro , bind to CTRL (Modifiers: CTRL) Adjust settings in profile (all time related settings are meant in seconds) FirstStart: Delay before bot starts MinWait: Minimum delay between cycles MaxWait: Maximum delay between cycles MouseWheel: True if you are using mousewheel macro GreedyScan: True if you want the bot, to start posting/canceling while a scan is in progress GetAllScan: True if you want the bot, to do a GetAll scan before starting a posting/canceling cycle PostFirst: True if you want the bot, to do posting first DoCancel: True if you want the bot, to do canceling Credits: Toney for inspiring me with his TSM profile Sapu and other TSM devs for making such awesome WoW Addon Teaser: [video=youtube_share;y5VOh0RHHVE]http://youtu.be/y5VOh0RHHVE[/video] This is only canceling-posting, when I have some time I make another video with the rest. If you like my profile please donate, thanks!
Last update: 2012.09.19 TradeSkillMaster_Auctioning/modules/PostScan.lua Add these lines to the bottom of the file Code: function Post:isScanningPBT() return isScanning end TradeSkillMaster_Auctioning/modules/CancelScan.lua Add these lines to the bottom of the file Code: function Cancel:isScanningPBT() return isScanning end TradeSkillMaster/Auction/AuctionFrame.lua Replace lines Code: for i, moduleInfo in ipairs(buttonInfo) do local frame = CreateSidebarButtonContainer(moduleInfo.module) tinsert(buttonFrames, frame) local buttons = {} frame.buttons = buttons for j, mode in ipairs(moduleInfo.modes) do local btn = CreateFrame("Button", [COLOR="#FF0000"]nil[/COLOR], frame) with Code: [COLOR="#00FF00"]local k = 0 [/COLOR] for i, moduleInfo in ipairs(buttonInfo) do local frame = CreateSidebarButtonContainer(moduleInfo.module) tinsert(buttonFrames, frame) local buttons = {} frame.buttons = buttons for j, mode in ipairs(moduleInfo.modes) do [COLOR="#00FF00"]k = k + 1[/COLOR] local btn = CreateFrame("Button", [COLOR="#00FF00"]"feature"..k[/COLOR], frame) Replace line Code: TSMAPI:CreateTimeDelay("auctionButtonClick", 0.01, function() self:GetScript("On[COLOR="#FF0000"]MouseUp[/COLOR]")(self) end) with Code: TSMAPI:CreateTimeDelay("auctionButtonClick", 0.01, function() self:GetScript("On[COLOR="#00FF00"]Click[/COLOR]")(self) end) Replace lines Code: btn:SetScript("On[COLOR="#FF0000"]MouseUp[/COLOR]", function(self, button) UnlockAllHighlight() self:LockHighlight() private:OnSidebarButtonClick(mode, [COLOR="#FF0000"]button[/COLOR]) end) with Code: btn:SetScript("On[COLOR="#00FF00"]Click[/COLOR]", function(self) UnlockAllHighlight() self:LockHighlight() private:OnSidebarButtonClick(mode, [COLOR="#00FF00"]"LeftButton"[/COLOR]) end) Note: Here lies one of the backdraws of doing this modify, is that you lose the ability to do a right click custom-scan. Delete the red colored part Code: return TSM.db [COLOR="#FF0000"]and tonumber(select(3, strfind(debugstack(), "([0-9]+)"))) == private.num[/COLOR] like this Code: return TSM.db TradeSkillMaster/Auction/AuctionUtil.lua It's a bit hard to edit this one, because the critical functions are compressed into one line. Delete the red colored part Code: if i == "info" then [COLOR="#FF0000"]if (time() - (test or 0)) > 1 then wipe(fPrivate) error("Invalid access of protected table.", 2) end[/COLOR] else like this Code: if i == "info" then else Replace red colored part Code: fPrivate.mode = mode.obj [COLOR="#FF0000"]getmetatable(mode).__newindex(mode, "result", fPrivate.mode:Show(fPrivate.frame, button)) if getmetatable(mode).__eq(mode, "isValid") then local function callback(flag) if flag then mode.result = debugstack() fPrivate.mode:Show(fPrivate.frame, button) else wipe(fPrivate) print("Error: You failed TradeSkillMaster's anti-bot test. TSM Won't work until you reload your UI.") return end end TSMAPI:RunTest(fPrivate.frame, callback) end[/COLOR] return mode.info with Code: fPrivate.mode = mode.obj [COLOR="#00FF00"]fPrivate.mode:Show(fPrivate.frame, button)[/COLOR] return mode.info Delete the red colored part Code: return [COLOR="#FF0000"]fPrivate:CheckEnv() or[/COLOR] temp.modeText like this Code: return temp.modeText TradeSkillMaster_Mailing/TradeSkillMaster_Mailing.lua Replace red colored part Code: local button = CreateFrame("Button", [COLOR="#FF0000"]nil[/COLOR], InboxFrame, "UIPanelButtonTemplate") with Code: local button = CreateFrame("Button", [COLOR="#00FF00"]"TSMOpenAllMail"[/COLOR], InboxFrame, "UIPanelButtonTemplate") Comment out line Code: error("Stack overflow.", 2) by entering "--" at the start of the line, like this Code: [COLOR="#00FF00"]--[/COLOR] error("Stack overflow.", 2)
Sweet! I'll give it a spin tonight and report back. I do suggest you make your own thread, because this should essentially replace mine and will make it easier for a) people to +rep you and b) give support to it without having to guess which one they are using. Thanks for sharing!
Ok il start. It does not initiate cancelling, means does not click cancel button and just goes for next action in a second after opening auction window. Canceling scan ended. Canceling cycle ended. Same with posting. It does not pick mail items from mailbox after false cancelling and just stays near mailbox with mail window opened forever. Latest TSM from curseforge and PB. Um im confused seeing post above me, gonna try oldish TSM.
I think you did not modify your TSM files. You need to modify them, check post #6. If you did, maybe you forgot to reload UI after modifying the files. Awaiting your reply! Right Then you could tell me which feature would you like to see next? I'm working on Restock by Crafting and buying mats from AH, but I have some problems with it yet not properly "seeing" shop list.
This profile works with the TSM mousewheel macro If you would like to see feature added for button hotkeys, let me know it
I did modify files before putting em to my wow folder even so I did not made clean install tho, just replaced old TSM with new one without touching WTF files with groups etc. Tho its unlikely may cause problems. Well lets wait for more replies for now. Meanwhile want to throw that its not really obvious how u wanna bind your wheel. I mean there are few options with alt or ctrl or shift. seen LCTRL in profile tho.
Oh yes, you are right. I totally forgot to mention it needs to be bind to CTRL. Will edit my post, thanks! On the otherhand its not the cause of your problem, bot not doing anything. Does your debug log tell any errors?
nope no errors, lets just wait for some more success replies so i know for sure the problem is on my side.
I have done everything you have advised here and am getting the below error. [1:51:38 PM:967] System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Styx.InvalidObjectPointerException: Cannot read a descriptor on an invalid object. at Styx.WoWInternals.WoWObjects.WoWObject.#eve[T](UInt32 field) at Styx.WoWInternals.WoWObjects.WoWObject.#dve[T](Int32 offsetIndex) at Styx.WoWInternals.WoWObjects.WoWUnit.get_Level() at Honorbuddy.MainWindow.#3Uc() --- End of inner exception stack trace --- at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Delegate.DynamicInvokeImpl(Object[] args) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) What seems to occur is the bot runs to ah. TSM is not the default tab it opens to so it says that scan complete runs to mailbox gets the mail runs back to ah activates ah then sits there because once again TSM is not default window although i have it set in the TSM options. I even tried restoring the original files without the edits you provided and did it again. LUA edits take into account if you have crafting and others listed you know how the windows are set to the side of the TSM AH window? I dont think i missed a step. I even did a fresh HB and PB install with only this to see if it was a Plugin error same issue. One more question is for the postscan and cancelscan LUA are you sure we should put it after the original ending or should we replace it? Great work but i think we need to be a bit clearer as no one seems to be getting this to function correctly...
You should set TSM tab open by default. If I get you right, you did this, and still it did not open by default? If thats the case, could you check any LUA errors? (by setting Interface->Help->Display LUA errors, ingame) edit: I think we found the problem (Azucar helped me thanks), fix incoming in a few minutes. temporary fix is to install and load all TSM modules.
I just noticed I posted this on your thread lol I thought you had posted it on mine, which didn't make much sense... Sorry ahaha
fix is up at post #6 edit: need to apply another bugfix that made it not work at all TradeSkillMaster/Auction/ AuctionFrame.lua replace lines with Note: Here lies one of the backdraws of doing this modify, is that you lose the ability to do a right click custom-scan. TradeSkillMaster_Mailing/ TradeSkillMaster_Mailing.lua replace line with
I'll toy around with the actual profile when I have more time (it's a lot fancier than mine), but just for the sake of experimenting, I did the pertinent file modifications and updated my own profile and it seems to be working perfectly. Can't wait to see where you take this . +rep to you sir! PS. Do you think you could edit the mailing module to allow access to the "Auto-Mail" button? Because that's 10 times better than having to deal with HB's ONE mail recipient (and having to add multiple lines of code to send stuff to different toons).