Fuzzy building A-Bot

Such a branching on hitpoints would require changing the source code.

Yes, it is the bot.config file.

I tried to add the following in the bot.config:

“ModuleActivePermanentSetTitlePattern”:
[
“Medium Armor Repairer II”,
]

It didn’t activate the module at all.
Another problem I see is that when it lands on an anomaly someone is working on, it will continue to fight.
Is there anyway to force it to skip that anomaly?

One thing you can do is to inspect what the app does at runtime, when undocked:

Place a breakpoint in the method ShouldBeActivePermanent and then inspect the variables there to see if your string ended up in bot?.ConfigSerialAndStruct.Value?.ModuleActivePermanentSetTitlePattern.

A breakpoint in there should be hit as soon as the bot has stored the tooltip for one module.

Do you find the configured string in bot?.ConfigSerialAndStruct.Value?.ModuleActivePermanentSetTitlePattern this way?


Yes there is a way, but this requires adapting the source code.

@Terpla

Using this function static public MenuPathTask ClickMenuEntryByRegexPattern(this IUIElement rootUIElement, Bot bot, string menuEntryRegexPattern, string menuNextStep)

Whit this command:

yield return scanResultCombatSite.ClickMenuEntryByRegexPattern(bot, "Warp To Within" , @"50");

The Bot have to do right-clcik on the anomaly → Enter into the sub-menu “Warp To Within” → Click on “Within 50 Km”

but the bot instead of do all this, go to click directly “Warp Within 0 m”

How I can set it to enter to the second result of the menulist and after click “Within 50 km” ?

If you make the bot click on the warp to from the anomoly page you can set your default warp to at 50k to solve it.

Read this

Even if you press the Dock, not the Warp at 0?

@Terpla I don’t warp do station from the overview entry, when the bot enter in anomaly his first command is to align to a safespot, this safespot is an instadock safespot, to aoivd the possibility to not be at 0 on station when the warp end.

So bot are actions are

  • Enter to anomaly
  • Align to safespot
  • If Retreat Then Warp at 0m on the safespot and then dock

Why not give directly the dock command? Because if someone prefer use motherships in a system without citadel then can disable the dock up function and still continue to use the BOT, they have just change kind of safespot not an instadock to a safe pot in a pos

As far as I know, the code worked for both the POS and the station. But it does not matter, go on.

@Master will you share the progress you have made with the rest of us? :slight_smile:
I’d love the part of checking if an anomaly has been taken when that is done!

@Fuzzy

When I have done I can share the part of the code manage it, how I told Im working in a private repository where Im not working only on the capitals and mothership interaction, Im rebuilding various stuff, but if you want when I have done I will share here the relative code and where add it :slight_smile:

Eksellent, looking forward to it :slight_smile:
Keep up the good work mate!

@Fuzzy

It’s too much stuff to post here in a reply, so give me this 3 filese:

  • Combat.cs
  • Bot.cs
  • Module.cs

The Combat.cs and Module.cs are located in Sanderling.ABot->Bot->Task
The Bot.cs is locataed in Sanderling.ABot->Bot

Post them here, I will modify directly and then I post again so you can apply the code

Hello @Master, here are the files :slight_smile:

Bot.cs.txt (6.0 KB)
Module.cs.txt (1.4 KB)
Combat.cs.txt (4.9 KB)

@Fuzzy

I added “SkipAnomaly” Function and then I fixed ur target priority, now your bot manage better the primary by ewar and then per class type.

Bot.cs (6.1 KB)
Combat.cs (6.4 KB)
Module.cs (2.7 KB)

Thanks @Master, I’m trying to build the solution with your modifications now(copied my directory and replaced your modified files) but getting allot of errors.
And the .exe files that are built does not seem to consider other people at the sites at it carries on it combat rutine. (I assume it is supposed to “break” before orbiting, targeting rats and launching drones?)

Here are the errors I get when trying to build:
A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Module.cs(67,15,67,41): error CS1061: ‘IListEntry’ does not contain a definition for ‘CellValueFromColumnHeader’ and no extension method ‘CellValueFromColumnHeader’ accepting a first argument of type ‘IListEntry’ could be found (are you missing a using directive or an assembly reference?)

\Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Module.cs(69,15,69,41): error CS1061: ‘IListEntry’ does not contain a definition for ‘CellValueFromColumnHeader’ and no extension method ‘CellValueFromColumnHeader’ accepting a first argument of type ‘IListEntry’ could be found (are you missing a using directive or an assembly reference?)

\Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Combat.cs(54,34,54,43): error CS0246: The type or namespace name ‘ColorORGB’ could not be found (are you missing a using directive or an assembly reference?)

\Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Combat.cs(72,55,72,78): error CS1503: Argument 2: cannot convert from ‘method group’ to ‘Func<ColorORGB, bool>’

Severity Code Description Project File Line Suppression State
Error CS1503 Argument 2: cannot convert from ‘method group’ to ‘Func<ColorORGB, bool>’ Sanderling.ABot \Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Combat.cs 72 Active
Error CS1061 ‘IListEntry’ does not contain a definition for ‘CellValueFromColumnHeader’ and no extension method ‘CellValueFromColumnHeader’ accepting a first argument of type ‘IListEntry’ could be found (are you missing a using directive or an assembly reference?) Sanderling.ABot \Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Module.cs 67 Active
Error CS1061 ‘IListEntry’ does not contain a definition for ‘CellValueFromColumnHeader’ and no extension method ‘CellValueFromColumnHeader’ accepting a first argument of type ‘IListEntry’ could be found (are you missing a using directive or an assembly reference?) Sanderling.ABot \Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Module.cs 69 Active
Error CS0246 The type or namespace name ‘ColorORGB’ could not be found (are you missing a using directive or an assembly reference?) Sanderling.ABot \Eve Online\A-Bot ORBIT - MasterChanges\src\Sanderling.ABot\Bot\Task\Combat.cs 54 Active

Are there special ways it detects other players, I mean have you set your colors in-game differently than the standard settings?
The only thing I have changed is setting neutrals and no standing to “white”
But the test earlier as I said did not consider allies → dark blue or Fleet → purple in a site that was claimed.

In Game you have to activate the background colors in overview and place the “pilot in your alliance” at the top of all, atm I got only the pilot in your alliance color, so A-Bot detect only them.

About the errors, if you move on the part where you get the error visual studio will tell you what add, I forgot to add the referements like “using…”

@Fuzzy

I wrong to delcare the OwnAnomaly,

the right declaration is this:
public bool OwnAnomaly = false;

so the checking will be this

if (OwnAnomaly == false)
{
if (listOverviewEntryFriends.Length > 0)
{
yield return bot.SkipAnomaly(memoryMeasurement);
yield return new AnomalyEnter { bot = bot };
}
else
{
OwnAnomaly = true;
yield return bot.LaunchFighters(memoryMeasurement?.ShipUi?.SquadronsUI);
}
}

and at the end of combat.cs you have to change
OwnAnomaly = null;

in:

OwnAnomaly = false;


Update, the function work, but I saw now after he check the anomaly if is taken he warp to next, else he start the anomaly BUT if some pilot in ally warp inside the anomaly, he gone to change the anomaly like if is the first check, so I have to fix it