Version 283 Code: This is a big release which has a lot of internal code refactored. In a rush to get this bot into production shortcuts were taken and as such there is a lot of UI code in places it doesn't belong. This version has stripped out much of this code and shifted it to where it belongs. Changes: Orderbot, fatebot and combat assist now better support changing routines while the bot is still running. Fatebot will no longer lockup the game client while waiting for a response from the navigation server. Better handling of the close window event, we now cancel the event then make sure that the bot thread has exited, the user has been logged out and that the log has been flushed to disk. Bug Fixes: Orderbot will no longer have issues starting as a disciple of the land/hand and switching to a combat class Don't trigger the post combat delay if the the delay hasn't been set. Stop movement when post combat delay begins. In some cases routinemanager.routinechanged wasn't firing, this has been corrected. SelectStringOverride now works properly. -<SelectStringOverride Index="0,3,2"/> will cause orderbot to select those items instead of the default behavior selecting the first(0) item. Each time a selectstring/selecticonstring window pops up an element is dequeued and that value is used to determine what index to pick. Api Changes: FreeItemSlots has been added to the ConditionParser for use within orderbot profiles. BrainBehavior.Handleloading has been removed, as it duplicated functionality present within CommonBehaviors.HandleLoading BotManager.SetCurrent will now throw an invalidoperationexecption if it is called while treeroot.IsRunning returns true. Treeroot.Stop has had its parameters changed. async Task Treeroot.StopGently has been added. Attempting to use StopGently from within the main bot thread will result in an invalidoperationexception Proper use of treeroot.stop: There are only two valid reasons to use TRS. 1)I wish to stop the botbase from continuing execution due to an unrecoverable/unhandled issue. -This is the primary usage of TRS. -Nothing has changed in this regard except now that under no circumstances will TRS abort the bot thread. This ensures that cleanup code always gets run, and its run on the thread that called the initialization code. 2)I wish to stop the bot so that I may switch the current botbase -This is a bit trickier, since the code for plugins runs inside of the main bot thread and stopping the main thread forcefully is no longer possible we need to start a new thread which will handle this for us. [code] System.Threading.Tasks.Task.Factory.StartNew(async () => { await TreeRoot.StopGently("Preparing to switch botbase."); BotManager.SetCurrent(BotManager.Bots.FirstOrDefault(r => r.Name == "Fate Bot")); TreeRoot.Start(); }); Normally creating another thread or using a task is a big no-no, but since we are not interacting with the game but rather simulating the interaction of a user, it is ok. Attempting to use TreeRoot.StopGently from within the bot thread will result in an invalidoperationexception. ==== INavigationProvider now has a new function CanFullyNavigateToAsync which replaces CanFullyNavigateTo. Currently CanFullyNavigateTo is marked as obsolete and is now only a wrapper for CanFullyNavigateToAsync I expect to make similar changes to moveto in the future as the use of asynchronous operators will greatly simply the way we work with the navigation server. [/code]
Hey Mastahq, looking at the example for the treestop gentle below, is it no longer required to use the Onstop event? I changed it to do the following. Code: public static void ChangeBot(string bot) { Common.LogText("Changing Bot to - " + bot); sBot = bot; TreeRoot.OnStop += TreeRoot_OnStop; Common.LogText("Treeroot On Stop Event Hooked"); System.Threading.Tasks.Task.Factory.StartNew(async () => { await TreeRoot.StopGently("Preparing to switch botbase."); }); return; } static void TreeRoot_OnStop(BotBase bot) { BotManager.SetCurrent(BotManager.Bots.FirstOrDefault(u => u.Name == sBot)); Common.LogText("Bot Changed to - " + sBot); TreeRoot.OnStop -= TreeRoot_OnStop; Common.LogText("Treeroot On Stop Event Removed and started."); TreeRoot.Start(); }
Noticed a couple typos in the beta version: Code: namespace ff14bot.Enums { public enum ClassJobType { Machinst = 31, Dark_Knight = 32, } } Should be Machinist and DarkKnight (if we're maintaining format compared to WhiteMage and BlackMage).
https://www.thebuddyforum.com/rebornbuddy-forum/218462-expansion-update-thread.html You can find it here but it is likely still down from the patch today.
Is it still not updated? I just downloaded the beta and just making sure I havent missed anything yet
The beta is the newest version as of now. Some things are not working correctly and mastahg is still ironing these issues out. Check the expansion update thread for more info.
I saw one of the links and downloaded it and put my key and it just wont load at all, just wondering if it is currently working
Still have a problem with the beta 1, i use Fate bot with my DK and the bot wont go back to the Aetheryte after a fate and just stand there. And yes the "ReturntoAetheryte" option is on.
Hello! First of all, thank you for the Beta so quickly ! I was wondering if we could expect an update for fly in the new areas with the "Fate Bot" ? Thank you <3
I'm curious about flight as well. Even gathering is a pain in the new zones because of the spread out nodes and how some can only be reached by jumping. Obviously don't expect a specific ETA, but a statement on how complex the task is and whether work on it is planned for the near vs. far far future would be greatly appreciated.