After this last update I’m not getting any “entries” on data like:
WindowRegionalMarket[0].QuickBarView.Entry
or
WindowRegionalMarket[0].SelectedItemTypeDetails.MarketData.SellerView
Can you fix this or point me to which values on the source code should I change?
Thank you, regards.
Definitely a lot of issues after the new release. From a mining perspective Asteroids can no longer be found in the overview. A really interesting change in behaviour is the inventory window. Moving items out of the cargo hold works as expected, but if the hold was originally empty there is a new “No items found” entry which the bot thinks is an item and tries to move it. Love CCP!
Personally I really dislike the new probe scan window. Yuck!
I will add guidance about how to go about such an issue soon.
It will probably start with how to reproduce the issue in Visual Studio using a process sample from the eve online client.
Nice! Spent my yesterday evening looking into the code. Do you, by chance, have plans to refactor it to English? It’s a bit hard to read when you don’t know German.
Now that we have established how to find the source code and how to reproduce memory reading from a saved process sample, lets take a closer look at the particular issue here.
The memory reading expects the ListViews items to be contained in a Scroll. The scroll UIElement contains the actual item in one of its child nodes. The scroll can also contain other stuff like a scroll handle the user can interact with. So when reading the Scroll, we want to find different things in there and the items are to be found in the portion labeled as Content in the code.
Dreambottle changed how the Content node is selected
The SuuceFlacMengeAstFrüheste method used for this selection step first does a Breadth-first search within the node passed as the first argument and returns the first node which matches the predicate which is passed as the second argument. The changed line only affects the predicate and makes it more restrictive.
So the reason for the old version failing could be the introduction of another node in the UITree which matches the predicate and comes first in the breadth-first order but is not the node which contains the nodes for the items in the list view.
var snapshot = BotEngine.Interface.Process.Snapshot.Extension.SnapshotFromWindowHandle(handle);
var memoryReader = new BotEngine.Interface.Process.Snapshot.SnapshotReader(snapshot?.ProcessSnapshot?.MemoryBaseAddressAndListOctet);
var memoryMeasurement = memoryReader.MemoryMeasurement().Parse();
Please help me. How memoryMeasurement is accumulate in MemoryMeasurementAccumulator in order to see MemoryMeasurementAccu?.Value?.ShipUiModule?.FirstOrDefault().TooltipLast? FromProcessMeasurement<Sanderling.Parse.IMemoryMeasurement> is required for MemoryMeasurementAccu.Accumulate().
var memoryMeasurementAccumulator = new MemoryMeasurementAccumulator();
// Feed the measurement to an accumulator:
memoryMeasurementAccumulator.Accumulate(
new BotEngine.Interface.FromProcessMeasurement<IMemoryMeasurement>(memoryMeasurement, 0, 1));