v1.9.7.1 uploaded:
-- Yet again removed any of DemonBuddy's internal itemtype checking as it still seems to be unreliable even with the latest DB.
-- Now logs (Diagnostics) any detection by the plugin of a possible item-type mis-read with a line like;
"GSDebug: Item Internal=trOut_OldTristramTombstoneDestructibleB-7029. DemonBuddy ItemType thinks item type is=CraftingPage. Giles thinks item type is=Unknown. This is *usually* a sign of DB mis-reading item data. [pickup]"
(DB was trying to pickup a tombstone... my item detection decided rightly that it wasn't an item)
These logs are so we can determine how safe or unsafe DB's itemtype reading is in future versions, and whether or not my own item-type detection is getting anything wrong.
I can only apologize to users of version 1.9.6 and 1.9.7 who experienced unusual pickup and stashing behaviors - since the latest DB was meant to fix a lot of the item-type misreadings, I was migrating code back to rely on DemonBuddy to determine itemtypes. Apparently this was a bad decision. 1.9.7.1 now goes back to relying on my own item-type recognition (only trying to utilize DemonBuddy in special fringe-cases for certain class-specifics that can't be identified by internalname alone), which should fix a lot of the oddities people have had with mis-stashing and large item pickup errors since 1.9.6.
Here's a few examples of DB mis-reading items (now protected by my plugin once again), and this is on the 1st run (so no issue of badly cached data, which was the supposed main cause of issues fixed in the last DB);
[GilesStashReplacer 1.9.7.1] GSDebug: Item Internal=trOut_OldTristramTombstoneDestructibleB-7029. DemonBuddy ItemType thinks item type is=CraftingPage. Giles thinks item type is=Unknown. This is *usually* a sign of DB mis-reading item data. [pickup]
[GilesStashReplacer 1.9.7.1] Blacklisting item: trOut_OldTristramTombstoneDestructibleB-7029 because of either D3 memory read error, invalid item type, or DB treating a random object as an item.
[GilesStashReplacer 1.9.7.1] GSDebug: Item Internal=HealthGlobe_02-10812. DemonBuddy ItemType thinks item type is=CraftingPage. Giles thinks item type is=Unknown. This is *usually* a sign of DB mis-reading item data. [pickup]
[GilesStashReplacer 1.9.7.1] Blacklisting item: HealthGlobe_02-10812 because it is a health-globe and shouldn't have a loot-attempt.
You can see DB would have tried looting a tombstone destructible item, and a healthglobe, as crafting pages - which could have caused odd problems.
[GilesStashReplacer 1.9.7.1] GSDebug: Item Internal=ceremonialDagger_norm_base_flippy_03-16100. DemonBuddy ItemType thinks item type is=Unknown. Giles thinks item type is=CeremonialDagger. This is *usually* a sign of DB mis-reading item data. [pickup]
And that's a case where DB would have ignored a real item because it thought it was an unknown item type - a sign DB can ignore actual items.
I am worried that DB is mis-reading other things too - like monsters, shrines etc. which could cause random issues fighting or generally botting. I can't say for sure, but I can't imagine this is limited strictly to reading item-types in DB?
If anyone wants to see other situations of item-type mis-reads, just open your full log file after running for a while with 1.9.7.1 and look for the text "GSDebug:" - and keep F3'ing to go down through your log-file for that phrase. (note that GSDebug: also crops up during a town-run just to show which stage of the town-run the bot is on).
[22:04:27.298 N] [GilesStashReplacer 1.9.7] No more space to pickup a 2-slot item, now running town-run routine.
hmm, my inv were full and went to stash things
saw it put a single slot item in stash and took out a set helm, dropped on ground
and walk towards vendor and start doing next area
Hi, please update to 1.9.7.1. I can only apologize for the error - I shouldn't have ever gone back to DemonBuddy itemtype reading. I just thought that they really had fixed these issues with the latest DemonBuddy update.