What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

[Plugin]AdvanceGrindZoneChanger

darkbluefirefly

Community Developer
Joined
Nov 8, 2013
Messages
1,927
XUDv3fp.png


Hey All, Stable release of AdvanceGrindZoneChanger
What it does; It changes grind zones after each grind zone completion from BasicGrindBot.
How to use;
Download, extract to /Plugin/AdvanceGrindZoneChanger
Load up bot, click Enable

You can choose the difficulty by clicking On the difficulty you want,
You can set it to limit time per grind zone, Check Limit Grind Time, then the box below it add a time, HH:MM:SS is the format


Choose the zones you want to grind and switch via clicking on the boxes, mouse hover over to see what they are.

Once Done, click Start and away we go.

To remove the zone;
Uncheck it on the map Or
Double Click on the name of the zone it will remove it.

You can change the time per zone by first, changing the time under Limit Grind Time to the time you want, double click on the time in the TimeLimit box and it will be changed to the time you have set on under the Limit Grind Time

Grind zone starts at Number one, goes to last zone, and repeats from number one again. # of repeats will let you know how many time it has repeated,



Build 30-12-2014-5.0​

New Features:
Getting Strongbox support soon, using pushedx's CorruptedAreaTweaks as a basis for this. Working so far but not implemented in this release.
Boss Logic added, again not in this release, going to add jyam's info into Dominus when it's all done.
Help button, which doesn't work =).
Some code Optimizations.
Other stuff I forgot lol.

I'll post a guide soon.

Bug Fixes:
Plugin Freezes
Plugin Crashes
GUI Based logic running when it's not suppose to
Other things I was testing, but didn't note down, which fixed things that were broken at the time.


PLEASE DELETE YOUR OLD /Plugins/AdvanceGrindZoneChanger Folder
AND
Settings\[Profile]\AdvanceGrindZoneChanger.json

BEFORE running the new plugin. Thanks


There are known bugs;
If issues persist. Delete the /Settings/[Profile]/AdvanceGrindZoneChanger.json file after closing bot, and try again.


To do;
Log on time it took in each zone, drops, etc, I love getting data so that's a plus
Boss Runs Per zone if applicable ( done has to be implemented from QuestPlugin)
And a bunch of other things I totally forgot but scribbled down somewhere on the planning papers when i was deciding how to go about this.

Suggestions/Bugs/Feedback Very much appreciated, if you download and try please let me know. This took about a month of work and will take more work on it to be "perfect".

Many, many thanks to Pushedx for dealing with my nagging and bothering him on coding issues that I could have fixed if I went to bed lol.

Yes you can change this to whatever code you do, if you publish it please give credit where it's due.

Yes you can farm corrupted zones with this, I won't tell you how as you need to read memory and other things that aren't really publishable on the forums.
 

Attachments

Last edited:
Thanks man, I'll let this one sit for a bit, as I am looking for more timed than change after each grindzone run! great work though!
 
Build 30-11-2014-2.1

New Features:
Grind Zone Time limits in, to use.
Check the "Limit Time Zone"
In the time box format is Hour:Minutes:Seconds
Check the zone you want, and the timelimit for that zone will be added beside the zone name

Let me know if there are any issues, going to sleep now.
 
Thanks buddy! will try tonight

Edit* not sure if this is me setting up wrong or not, but I set the timers for each area, and it seems to bypass the timers set ? IE. does one run of one place and just goes to the next ? Am I wrong to think it is supposed to grind one area until the timer is reached and then move to the next ?
 
Last edited:
Thanks buddy! will try tonight

Edit* not sure if this is me setting up wrong or not, but I set the timers for each area, and it seems to bypass the timers set ? IE. does one run of one place and just goes to the next ? Am I wrong to think it is supposed to grind one area until the timer is reached and then move to the next ?
Post Me log, thanks.
 
Will do ASAP. Also, Hi From Canada as well!
Nice Eh!

Build 2.5 is up, you can set the difficulty and grind zone time limit per zone, read first Post.
Let me know if there are issues. Working on new Plugin now as I consider this done, aside from some features
Randomization after every full list run, data stuff, etc.
 
Hi, I try run Piety with plugin enable, but the gringzone are skip the Piety. Thanks for you work.
 
Hi,

I downloaded this bot yesterday and still learning :)

When i enable it i get this error: Nevermind! I deleted it and downloaded again, working fine.
 
Last edited:
Nice work Dark, working great :D
Hey, IeU, Good to hear, I have a few more features to put in it but it takes a bit of time and I still have lots to learn on code optimization and tricks. So currently it's considered done, while I go do other plugins. I won't update it unless I really need to.

Hi,

I downloaded this bot yesterday and still learning :)

When i enable it i get this error: Nevermind! I deleted it and downloaded again, working fine.
Hi Greenbotter, Great to hear!, let me know if there are any issues at all.
 
Hi :) I'm having some trouble, i got alot of these errors but i don't know why or what it is affecting.

[Tick] Exception during execution:System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext()
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Loki.Game.LokiPoe.ObjectManager.()
at Loki.Game.LokiPoe.ObjectManager.()
at Loki.Game.Utilities.PerCachedValue`1.get_Value()
at Loki.Game.LokiPoe.ObjectManager.get_Objects()
at Loki.Game.LokiPoe.ObjectManager.()
at Loki.Game.Utilities.PerCachedValue`1.get_Value()
at Loki.Game.LokiPoe.ObjectManager.get_Me()
at Loki.Bot.v3.GridExplorer.(Node , Vector2i , Boolean )
at Loki.Bot.v3.GridExplorer.(Node , Boolean )
at Loki.Bot.v3.GridExplorer.Tick()
at Loki.Bot.v3.AreaStateCache.()
at Loki.Bot.v3.AreaStateCache.Tick()
at Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBot.Tick()
at Loki.Bot.BotManager.(IBot )


And



Exception during InvokeEventSystem.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext()
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Loki.Game.LokiPoe.ObjectManager.()
at Loki.Game.Utilities.PerCachedValue`1.get_Value()
at Loki.Game.LokiPoe.ObjectManager.get_Objects()
at Loki.Game.LokiPoe.ObjectManager.()
at Loki.Game.Utilities.PerCachedValue`1.get_Value()
at Loki.Game.LokiPoe.ObjectManager.get_Me()
at Loki.Game.LokiPoe.get_Me()
at AdvanceGrindZoneChanger.AdvanceGrindZoneChanger.LokiPoeOnOnGuiTick(Object sender, GuiTickEventArgs guiTickEventArgs) in c:\Users\PoE\Desktop\Exilebuddy 0.1.2912.81\Plugins\AdvanceGrindZoneChanger\AdvanceGrindZoneChanger.cs:line 245
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at System.Delegate.DynamicInvoke(Object[] args)
at Loki.Game.LokiPoe.InvokeEvent(Delegate d, Object[] args)


And


Exception during InvokeEventSystem.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: The calling thread cannot access this object because a different thread owns it.
at System.Windows.Threading.Dispatcher.VerifyAccess()
at System.Windows.Threading.DispatcherObject.VerifyAccess()
at System.Windows.Media.Imaging.BitmapDecoder.ToString()
at System.Windows.Media.Imaging.BitmapFrameDecode.ConvertToString(String format, IFormatProvider provider)
at System.Windows.Media.ImageSourceConverter.ConvertTo(ITypeDescriptorContext context, CultureInfo culture, Object value, Type destinationType)
at System.ComponentModel.TypeConverter.ConvertToString(ITypeDescriptorContext context, CultureInfo culture, Object value)
at System.ComponentModel.TypeConverter.ConvertToInvariantString(Object value)
at €..(Object , Type , String& )
at €..(JsonWriter , Object , JsonStringContract )
at €..(JsonWriter , Object , JsonContract , JsonProperty , JsonContainerContract , JsonProperty )
at €..(JsonWriter , Object , JsonObjectContract , JsonProperty , JsonContainerContract , JsonProperty )
at €..(JsonWriter , Object , JsonContract , JsonProperty , JsonContainerContract , JsonProperty )
at €..(JsonWriter , Object , Type )
at Newtonsoft.Json.JsonSerializer.(JsonWriter , Object , Type )
at Newtonsoft.Json.JsonSerializer.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Type type, Formatting formatting, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting)
at Loki.Utilities.JsonSettings.SaveAs(String file)
at Loki.Utilities.JsonSettings.Save()
at AdvanceGrindZoneChanger.AdvanceGrindZoneChangerGui.ChangeLogic() in c:\Users\PoE\Desktop\Exilebuddy 0.1.2912.81\Plugins\AdvanceGrindZoneChanger\AdvanceGrindZoneChangerGui.xaml.cs:line 525
at AdvanceGrindZoneChanger.AdvanceGrindZoneChanger.ExplorationCompleteTaskOnCompleted(Object sender, ExplorationCompleteEventArgs explorationCompleteEventArgs) in c:\Users\PoE\Desktop\Exilebuddy 0.1.2912.81\Plugins\AdvanceGrindZoneChanger\AdvanceGrindZoneChanger.cs:line 287
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at System.Delegate.DynamicInvoke(Object[] args)
at Loki.Game.LokiPoe.InvokeEvent(Delegate d, Object[] args)

Also sometimes i get an error where the bot stops and restarts, resulting in standing still and doing nothing. (sometimes it restarts quick so it's going after 1-2 sec, sometimes longer)
Tick] Exception during execution:Buddy.Coroutines.CoroutineUnhandledException: Exception was thrown by coroutine ---> System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.Collections.Generic.List`1.set_Capacity(Int32 value)
at System.Collections.Generic.List`1.EnsureCapacity(Int32 min)
at System.Collections.Generic.List`1.Add(T item)
at Loki.Bot.Pathfinding.ExilePather..(Int32 , Int32 )
at Loki.Bot.Pathfinding.ExilePather.GetPointsOnSegment(Vector2i start, Vector2i end)
at Loki.Bot.Utility.ClosedDoorBetween(Vector2i start, Vector2i end, Int32 distanceFromPoint, Int32 stride)
at Loki.Bot.Utility.ClosedDoorBetween(NetworkObject start, NetworkObject end, Int32 distanceFromPoint, Int32 stride)
at ExampleRoutine.ExampleRoutine.<Logic>d__50.MoveNext() in c:\Users\PoE\Desktop\Exilebuddy 0.1.2912.81\Routines\ExampleRoutine\ExampleRoutine.cs:line 1469
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Loki.Bot.Logic.Bots.BasicGrindBot.CombatTask..()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Loki.Bot.v3.TaskManager..()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBot..()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Buddy.Coroutines.Coroutine...()
--- End of inner exception stack trace ---
at Buddy.Coroutines.Coroutine.(Boolean )
at Buddy.Coroutines.Coroutine.(Boolean )
at Buddy.Coroutines.Coroutine.Resume()
at Loki.Bot.Logic.Bots.BasicGrindBot.BasicGrindBot.Tick()
at Loki.Bot.BotManager.(IBot )

The bot coroutine has finished in a state of Faulted
[Stop] Now requesting the BotThread to stop.
[Tick] Attempting to start the bot again. This is bot restart # 1.
[Start] The BotThread is already running. Please use BotManager.Stop first.
[BasicGrindBot] OnStop
[AdvanceGrindZoneChanger] Stop
[AutoFlask] Stop
[ChaosChanceRecipe] Stop
[GemLeveler] Stop
[StuckDetection] Stop
[ExampleRoutine] Stop
[Start] Now creating the BotThread.
[BasicGrindBot] Start
[Start] PlayerMover.Instance: Loki.Bot.v3.DefaultPlayerMover.
[Start] MsBetweenTicks: 15.
[Start] InputEventMsDelay: 100.
[Start] LowFpsMode: False.
[AddAtBack] Now adding [ResurrectTask] This task handles resurrection..
[AddAtBack] Now adding [ClearCursorTask] This task places any item left on the cursor into the inventory..
[AddAtBack] Now adding [AssignMoveSkillTask] A task to handle assigning the Move skill if it's not already on the skill bar..
[AddAtBack] Now adding [HandleBlockingChestsTask] This task will handle breaking any blocking chests that interfere with movement..
[AddAtBack] Now adding [HandleDoorsTask] This task handles opening doors..
[AddAtBack] Now adding [CombatTask (Leash 50)] This task executes routine logic for combat..
[AddAtBack] Now adding [TownRunTask] A task to go back to town during the middle of a bot run..
[AddAtBack] Now adding [LootItemTask (Leash 50)] This task handles looting items..
[AddAtBack] Now adding [OpenChestTask (Leash 50)] This task handles opening chests..
[AddAtBack] Now adding [LootItemTask (Leash -1)] This task handles looting items..
[AddAtBack] Now adding [MergeInventoryTask] A task to handle merging the inventory into full stacks..
[AddAtBack] Now adding [IdTask] A task to identify items in inventory..
[AddAtBack] Now adding [SellTask] A task to vendor items in the inventory..
[AddAtBack] Now adding [StashTask] This task will stash all applicable items in town..
[AddAtBack] Now adding [WithdrawTask] A task to withdraw items from stash when we are in town..
[AddAtBack] Now adding [HandleInventoryItemsTask] A task to manage inventory items that are not stashed..
[AddAtBack] Now adding [SortInventoryTask] A task to sort the main inventory by moving items towards the top left corner..
[AddAtBack] Now adding [ReturnToGrindZoneTask] This task will return the bot to the previous grind zone after a town run..
[AddAtBack] Now adding [TagWaypointTask] This task will tag a waypoint if it is not already unlocked..
[AddAtBack] Now adding [UseLooseCandleTask] This task will use the Loose Candle when the grind zone is set to The Archives..
[AddAtBack] Now adding [UnblockCorruptedAreaTransitionTask] This task will use the Loose Grate and Sarcophagus covers for corrupted area transitions..
[AddAtBack] Now adding [TakeCorruptedAreaTask] A task to take corrupted areas..
[AddAtBack] Now adding [TravelToGrindZoneTask] This task will travel to the grind zone configured..
[AddAtBack] Now adding [TravelThroughBossAreasTask-BossFarm] This task will travel though the local area transitions in boss zones..
[AddAtBack] Now adding [OpenChestTask (Leash -1)] This task handles opening chests..
[AddAtBack] Now adding [CombatTask (Leash -1)] This task executes routine logic for combat..
[AddAtBack] Now adding [TravelThroughBossAreasTask-PassThrough] This task will travel though the local area transitions in boss zones..
[AddAtBack] Now adding [ExplorationCompleteTask (Early)] A task to execute exploration complete logic..
[AddAtBack] Now adding [ExploreTask] This task handles exploring an area..
[AddAtBack] Now adding [ExplorationCompleteTask] A task to execute exploration complete logic..
[AddAtBack] Now adding [FallbackTask] This task is the last task executed. It should not execute..
[AdvanceGrindZoneChanger] Start
[AutoFlask] Start
[ChaosChanceRecipe] Start
[AddAtFront] Now adding [ChaosAndChanceRecipeWithdrawTask] ..
[GemLeveler] Start
[GemLeveler] Now resetting task state.
[StuckDetection] Start
[ExampleRoutine] Start
[ChaosAndChanceRecipeWithdrawTask] Now resetting task state.
[ChaosAndChanceRecipeSellTask] Now resetting task state.
[HandleBlockingChestsTask] Now resetting task state.
[IdTask] Now resetting task state.
[SellTask] Now resetting task state.
[WithdrawTask] Now resetting task state.
[ReturnToGrindZoneTask] Now resetting task state.
[TagWaypointTask] Now resetting task state.
[UseLooseCandleTask] Now resetting task state.
[UnblockCorruptedAreaTransitionTask] Now resetting task state.
[TravelToGrindZoneTask] Now resetting task state.
[TravelThroughBossAreasTask] Now resetting task state.
[TravelThroughBossAreasTask] Now resetting task state.
[Start] The plugin AdvanceGrindZoneChanger is enabled.
[Start] The plugin AutoFlask is enabled.
[Start] The plugin ChaosChanceRecipe is enabled.
[Start] The plugin GemLeveler is enabled.
[Start] The plugin StuckDetection is enabled.
[Start] PlayerMover.Instance: Loki.Bot.v3.DefaultPlayerMover.
[IdTask] We cannot id items out of town/hideout. Skipping this task until an area change or restart.
[WithdrawTask] We cannot withdraw items out of town/hideout. Skipping this task until an area change or restart.


Also, why does it create a new instance, go back to town and create a new instance again in the same location?

Don't know if any of this is related to your plugin tho.

Thanks for taking a look! :)
 
Last edited:
Back
Top