New Fighters

Is it possible to use new fighters with this bot ?

1 Like

Yes.

Hi Arcitectus,

I went through all the tutorials and read it but I still can’t figure it out (The moment you realize you are not that clever sucks ) - are you by any chance working on some kind of “Sanderling for dummies” ?

BTW - this botting framework looks awsome.

I spent some time browsing throught ShipUi and I found all the modules and the status of them but I still can’t find new fighter squadrons (New Gungnirs and Einherji) any chance you can help me find it ?

From probe scanner - I used some filters and now I only have a list with small havens - how can I warp to the first one ?

I really really want to learn this.

Best regards

At the moment I answer questions as they arise, the tutorials cover only a small portion so far.

I am not sure what you mean with “Sanderling for dummies” but I can give you some examples of how I help people to understand how to work with Sanderling:

  • I answer questions about the API and how to use it.
  • I create code samples for common tasks.
  • For those who are not familiar with C# or programming in general, I help with C#.
  • For those who would like to use a more powerful IDE, I show how to Visual Studio can be used for bot development.

I assume I can help you find the new fighter squadrons, if you help me. I suggest you take a sample while the information you are looking for is displayed in the eve online client as described in this tutorial and send me this: http://forum.botlab.org/thread/collecting-samples-for-memory-reading-development/

I will take a look at the probe scanner and get back to you with some more info.

As long as you continue telling me whats on your mind, I think you won’t have any problem learning this.

Sending that file might be a bit of a problem due to its size - it is more than 334MB. Do you need it all or can I extract the most important bit ?

My goal is to create a bot which will warp to anomaly and use a new squadron fighters to wipe out all the rats.

I think I will be ok will local detection and emergency warpout to bookmark but getting a sample how to use a new squadrons would be a great help.

Thank you for your help.

Friend of mine already sent you an example file with memory sample.

The size of the sample is very much dependent on the amount of memory the eve client holds. Usually when I take a sample from the eve client, it is about 200MB. You might be able to get closer to 200 by setting graphics settings to low, turn off music and restart the client.

At the moment I cannot think of any way to extract a sufficient subset before the transfer. As long as I can download it somewhere, I can work with it. So you can use a file hoster if you prefer.

“Friend of mine already sent you an example file with memory sample.” - Yeap the size was around 204MB with low graphics settings and no audio - he sent it to your email: michael@rätzel.com - hope you will get it.

Thank you, I received the sample.

Very nice, it also has the Probe Scanner with the scanned objects so I can probably use it for the probe scanner too.

Extracting the info will take some time.

Next step is to look at what you need from there, do you have the screenshot that is contained in the sample? If not I can send it to you.

Here is what I can make out so far:

On the left of the squadrons, three UIElements, I guess those are clickable.

And in addition per one of the five columns:

  • The label which shows “In Space” for all.
  • The distance label below
  • Three UI elements which look like the modules in the ShipUI, I guess they might be clickable as well. The upmost of those contains a label showing a quantity. Do we have to read more info from those elements?
  • Something that looks like a circular indicator (center of the one in the leftmost column is at about 621|417), are the segments atomic, does the one on the left have more than ten different possible values?

New Fighters sample:

http://prntscr.com/bpphl7: Light fighters - there are three clickable buttons same with heavy fighters (99.9% we olony use autocannons),

“On the left of the squadrons, three UIElements, I guess those are clickable” - Correct

http://prntscr.com/bppisi - Top one: Launch all fighetrs, Middle one - Fighter bay, Bottom one - Recall all fighters

“Do we have to read more info from those elements?” - Yes

http://prntscr.com/bppjeb - Will show you how many fighters they are in each squadron and if they take damage.

Picture with more info: http://prntscr.com/bpplrn

1 Like

So the number of the segments in the ring is the number of fighters in the squadron?

“So the number of the segments in the ring is the number of fighters in the squadron?” - Yes

Light fighters 9 in one squadron

Heavy fighters - 6 in one squadron

1 Like

Ok, will take a look at how to extract this probably tomorrow.

1 Like

I made a draft for the structure to be added to the API, it is modeled in C#. You can view it at  https://github.com/Arcitectus/Sanderling/blob/327c2caf4084fc77e42968a72c0a3fdb115479af/src/Sanderling.Interface/Sanderling.Interface/MemoryStruct/SquadronUI.cs

Do you understand how it would be used?

At the moment I see two things missing:

  • damage
  • “more info from those elements” → at the moment their type is named ‘SquadronAbility’

It’s seems good.

Fighters have also menu from right click, can you read them from previous sample? It looks like this:

sample

I was person who send you last sample, can make new one if it will be neccresary.

Option “Return and orbit” will be very usefull in bot since you can initate warp and when you land in next anomaly you can simple call them to orbit (they will warp to you and still become in space instead of going to fighter bay).

Maybe this will be usefull too - fighters have the same tooltip (except - light fighters had Autocannon, heavy Artillery). Sample:

Sample2

1 Like

Hi,

Managed to get Visual Studio and import your project. I am able to run it - not quite sure how should I implement a new class.

Hello Kabra,

thank you that is some useful information.

About the context menu:

I cannot see it in the last sample but I assume that you can already see it when you look in the API Explorer as in the screenshot below:

I adjusted the draft to enable clicking on the portion which contains the health gauge and the labels below: https://github.com/Arcitectus/Sanderling/commit/e071960b5428c9939a1d414c043ea4261823a621

About the tooltip:

Maybe this works the same as the Tooltips for ship modules. In this case you should see it in the API Explorer at this path:

MemoryMeasurementParsed?.Value?.ModuleButtonTooltip

If it is not in there, I will need a sample for this in case you want to use the tooltip.

1 Like

@liswitalis:

To implement a class, place this code in a c# source file in a VS C# project:

class NameOfTheClass { }

In case there has been a misunderstanding: the purpose of the draft I created was learn whether the API structure as shown would be helpful and sufficient for what you are planning.

First of all - thank you for your time.

Most likely I am doing something wrong but I do not see it.

I do not really have anything under Menu.

I am still trying to get my head around it. If you could be so kind and take a look at the next screenshot. This is a list with one particular object: Angel haven. It comes from Window called Probe Scanner. How can I warp to that ? Code example would be perfect.

Menu

I do not really have anything under Menu.

I see two possible causes for this:

  • specific for the menu: no menu is open in the eve online client: is a menu visible in the client? This is the context menu which is opened by rightclicking in most cases. See this screenshot for an example of opened menus: 
  • the bot has not yet taken a new measurement since the menu has been opened: You can expand the section “time & origin of displayed measurement” to see the age of the last measurement. See the screenshot: 

Warping to the probe scan result

I wrote a code example to be used in the integrated IDE that does the warping. It works like this:

  • search for the label that you showed in your screenshot, identifying the window by its caption and the label by the text you gave.
  • rightclick the label.
  • search the contextmenu for the entry to warp to at 0 km
  • click that menu entry.

This is the complete code:

using Parse = Sanderling.Parse;  var probeScanResultLabelTextRegexPattern = "Angel haven";  Parse.IMemoryMeasurement memoryMeasurement => Sanderling.MemoryMeasurementParsed?.Value;  var windowProbeScanner =     memoryMeasurement?.WindowOther     ?.FirstOrDefault(window => window?.Caption?.RegexMatchSuccessIgnoreCase("probe scanner") ?? false);  Host.Log("windowProbeScanner: " + windowProbeScanner);  var scanResultLabel =     windowProbeScanner?.LabelText     ?.FirstOrDefault(label => label?.Text?.RegexMatchSuccessIgnoreCase(probeScanResultLabelTextRegexPattern) ?? false);  Host.Log("scanResultLabel (location): " + scanResultLabel + "(" + scanResultLabel?.Region.Center() + ")");  Host.Log("attempt to open context menu"); Sanderling.MouseClickRight(scanResultLabel);  var menu = memoryMeasurement?.Menu?.FirstOrDefault(); Host.Log("menu: " + menu);  var menuEntryWarp = menu?.Entry?.FirstOrDefault(entry => entry?.Text?.RegexMatchSuccessIgnoreCase("warp.*0") ?? false); Host.Log("menuEntryWarp: " + menuEntryWarp);  Sanderling.MouseClickLeft(menuEntryWarp);