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.
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?
Iâd love the part of checking if an anomaly has been taken when that is done!
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
Eksellent, looking forward to it
Keep up the good work mate!
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
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.
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âŚâ
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