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

[Plugin] AdvancedItemFilter RELOADED !

Status
Not open for further replies.
Someone help! cant get it working Using

{
"Comment": "",
"Enabled": true,
"Type": 0,
"Rule": "item.FullNameContains("Leaguestone")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 2,
"Rule": "item.FullNameContains("Leaguestone")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 0,
"Rule": "item.FullNameContains("Ancient Reliquary")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 2,
"Rule": "item.FullNameContains("Ancient Reliquary")",
"ShouldLog": false,
"Priority": 1
}


At the end of the code gives me an error saying

[Application_DispatcherUnhandledException] Unhandled exceptionNewtonsoft.Json.JsonReaderException: After parsing a value an unexpected character was encountered: L. Path '[315].Rule', line 1896, position 32.
at Newtonsoft.Json.JsonTextReader.ParsePostValue()
at Newtonsoft.Json.JsonTextReader.Read()
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at AdvancedItemFilter.Classes.RulesManager.Load(String filename) in C:\Users\Josh\Desktop\New folder (7)\3rdParty\_CONFIGS_\Default\AdvancedItemFilter\Content-1657754609\Classes\RulesManager.cs:line 78
at AdvancedItemFilter.AdvancedItemFilterSettingsGui.LoadRulesButtonClick(Object sender, RoutedEventArgs e) in C:\Users\Josh\Desktop\New folder (7)\3rdParty\_CONFIGS_\Default\AdvancedItemFilter\Content-1657754609\AdvancedItemFilterGUI.xaml.cs:line 348
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
 
Someone help! cant get it working Using

{
"Comment": "",
"Enabled": true,
"Type": 0,
"Rule": "item.FullNameContains("Leaguestone")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 2,
"Rule": "item.FullNameContains("Leaguestone")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 0,
"Rule": "item.FullNameContains("Ancient Reliquary")",
"ShouldLog": false,
"Priority": 1
},
{
"Comment": "",
"Enabled": true,
"Type": 2,
"Rule": "item.FullNameContains("Ancient Reliquary")",
"ShouldLog": false,
"Priority": 1
}


At the end of the code gives me an error saying

[Application_DispatcherUnhandledException] Unhandled exceptionNewtonsoft.Json.JsonReaderException: After parsing a value an unexpected character was encountered: L. Path '[315].Rule', line 1896, position 32.
at Newtonsoft.Json.JsonTextReader.ParsePostValue()
at Newtonsoft.Json.JsonTextReader.Read()
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at AdvancedItemFilter.Classes.RulesManager.Load(String filename) in C:\Users\Josh\Desktop\New folder (7)\3rdParty\_CONFIGS_\Default\AdvancedItemFilter\Content-1657754609\Classes\RulesManager.cs:line 78
at AdvancedItemFilter.AdvancedItemFilterSettingsGui.LoadRulesButtonClick(Object sender, RoutedEventArgs e) in C:\Users\Josh\Desktop\New folder (7)\3rdParty\_CONFIGS_\Default\AdvancedItemFilter\Content-1657754609\AdvancedItemFilterGUI.xaml.cs:line 348
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

As a dozen people have said previously, there doesn't seem to be a direct way to do this yet. Reliquary keys are picked up as currency, so set a simple pickup and keep all currency rule. For leaguestones, pickup and keep all corrupted items. Simple as that. Once a proper update is made for these items, things will be more direct.

EDIT: For anyone wondering - both of the above work. I've looted multiple keys and leaguestones. Simple rules.
 
As a dozen people have said previously, there doesn't seem to be a direct way to do this yet. Reliquary keys are picked up as currency, so set a simple pickup and keep all currency rule. For leaguestones, pickup and keep all corrupted items. Simple as that. Once a proper update is made for these items, things will be more direct.

EDIT: For anyone wondering - both of the above work. I've looted multiple keys and leaguestones. Simple rules.


IF keys are currency then wouldnt you have to kill the currency tab or the bot would freeze or would it just place them elsewhere?
 
IF keys are currency then wouldnt you have to kill the currency tab or the bot would freeze or would it just place them elsewhere?

Just set the AIF custom rule to pickup and keep all currency. It will stash them in any open tab...
 
Yes, set all tabs you want to be used in the CommunityLib plugin. Then use EXtensions to specify where things will be stashed. If all tabs fill up, the bot will stop.

isnt the bot supposed to vendor the items to get the chaos orbs instead of just filling the stash and stopping? mine ignores my quantity rules for some reason, i set it to save 2 chests but it saves unlimited
 
isnt the bot supposed to vendor the items to get the chaos orbs instead of just filling the stash and stopping? mine ignores my quantity rules for some reason, i set it to save 2 chests but it saves unlimited

Yes, it will sell once it gets the threshold number of items, or when it gets a full set. Do you have the recipe option checked, and if so, do you have the level slider selected to include only chaos items? Also, what are your AIF rules regarding picking up rares?
 
Just noticed, AIF doesn't pickup Silver Coins

I assume you're using the filters floating around in this thread. In those, there's a separate entry for each currency - if you want to continue using that, just create a clone of one of the currency rules and change the name to "Silver Coin".

Another option is to create a general rule to keep all currency and then use the specific pickup entries section of AIF to limit pickups of common currencies to a threshold number. For example, I set the threshold for scrolls and currencies such as blacksmiths to 1000. When you accumulate that many, the bot will stop picking them up. I feel this is a better way to do things, as the general rule will pick up all currencies - including reliquary keys, splinters, perandus coins, and whatever else you may be currently missing.
 
As a dozen people have said previously, there doesn't seem to be a direct way to do this yet. Reliquary keys are picked up as currency, so set a simple pickup and keep all currency rule. For leaguestones, pickup and keep all corrupted items. Simple as that. Once a proper update is made for these items, things will be more direct.

EDIT: For anyone wondering - both of the above work. I've looted multiple keys and leaguestones. Simple rules.


I have set simple rules to pick up Item.iscorrupted and a rule for keep item.iscorrupted and the bot still ignores leaguestones.....could you link your rules?
Here is a screenshot of my Pickup Rule: Pick up Rule
 
I have set simple rules to pick up Item.iscorrupted and a rule for keep item.iscorrupted and the bot still ignores leaguestones.....could you link your rules?
Here is a screenshot of my Pickup Rule: Pick up Rule

That's no different than me, and mine work fine. Try linking your whole text file of rules.
 
Yes, it will sell once it gets the threshold number of items, or when it gets a full set. Do you have the recipe option checked, and if so, do you have the level slider selected to include only chaos items? Also, what are your AIF rules regarding picking up rares?


I have it ticked and all rare pickups are turned off in the bot. I have been trying to get it to work for days now. I have tried 3 different item filters and also tried with just a fresh install and adding the item.IsNeededForRecipe into pickup and setting stashing/community lib options to keep it minimal but it still doesent work.
 
I have it ticked and all rare pickups are turned off in the bot. I have been trying to get it to work for days now. I have tried 3 different item filters and also tried with just a fresh install and adding the item.IsNeededForRecipe into pickup and setting stashing/community lib options to keep it minimal but it still doesent work.

I'm at a loss then. It's likely something small and obscure that is being overlooked, but I can't come up with any other troubleshooting suggestions. Hop on discord and put some feelers out to see if anyone else has suggestions.
 
I have it ticked and all rare pickups are turned off in the bot. I have been trying to get it to work for days now. I have tried 3 different item filters and also tried with just a fresh install and adding the item.IsNeededForRecipe into pickup and setting stashing/community lib options to keep it minimal but it still doesent work.

The rule is item.IsNeededForChaosRecipe btw. Enable that rule and turn off all other rare pickup rules.

a3Q72zW.jpg
 
Last edited:
Can someone help me with a rule for stashing ALL essence, or is there a bunch of different ones I gotta add to make them all stash?
I tried looking a bit but couldn't find it so I do apologize in advanced if there is already something about this.
 
Can someone help me with a rule for stashing ALL essence, or is there a bunch of different ones I gotta add to make them all stash?
I tried looking a bit but couldn't find it so I do apologize in advanced if there is already something about this.

.......

item.IsEssence
 
The rule is item.IsNeededForChaosRecipe btw. Enable that rule and turn off all other rare pickup rules.

a3Q72zW.jpg


For clarification sake - this rule will work, yes. But the generic "item.IsNeededForRecipe" works based on the recipe level slider - if you set the slider at 60-74, the generic rule will loot in the same manner as the chaos-specific loot rule. Keep this in mind when doing higher tier maps as you'll want to loot items required for regal recipes as well...
 
.......

item.IsEssence

Sorry, guess I should have made it more clear.
Under the stashing tab, I want it to go to my essence tab.

Guess, I should have tried first, but figured the same ruling wouldn't work in that page since you have to type out the full name of the item, and don't use any ruling for those.

E: and now I see that they already added the function in, but still looks like I would have to type all of them in? Sorry for the confusion
 
Last edited:
Sorry, guess I should have made it more clear.
Under the stashing tab, I want it to go to my essence tab.

Guess, I should have tried first, but figured the same ruling wouldn't work in that page since you have to type out the full name of the item, and don't use any ruling for those.

Just cache your essence tab in CommunityLib and set the specific stashing rule in AIF to stash your essences to your essence tab.
 
Just cache your essence tab in CommunityLib and set the specific stashing rule in AIF to stash your essences to your essence tab.
I guess that's where I'm confused.

Can I just use the rule on the item name line? I have them in CommunityLib and all of that, but guess just figured I would have to write EVERY full essence name in.

E: Figured out it won't stash in Essence Tabs. Got it working, thank you for the help!
 
Last edited:
Status
Not open for further replies.
Back
Top