Local intel bot?

Hey there! Back in February it looks like a branch was made for a local intel watch bot that played an alarm. However, this isn’t in master and the script doesn’t appear to work anymore.

Any chance this could get updated to a working state again and merged?

I’ve been poking at it in Visual Studio for a while, but I often get stuck with “Starting the app…” and no other indication of what is going on/no errors.

Thanks

Right, looks like the one from february is outdated.

So I made a fresh one here: Implement local intel watch · Viir/bots@37de0ce · GitHub

You can run the app from FrontendWeb.Main

1 Like

Thanks a bunch Viir!

I’ll probably still end up running a custom version because I need to tweak “goodStandingPatterns” a little. :heart:

Edit: Oh I see you already added that as an option. Thanks!

One last question: What would be the easiest way to insert a delay after the beeps trigger, without reducing the check rate when there is no hostile in local.

Or even better would be the option to have it only beep if the number hostiles in local rises, not if it stays the same.

I assume that this works even though my character in the local list has no colortag? Just a blank entry where it would be for other players.

pinata29: It’s set to ignore 1 entry, the one caused by your own character, so yes it works even though your character has no colortag.

1 Like

Would be great if the statusMessage could include the active character name too!

I implemented this variant now:

This app watches local and counts the number of pilots that are hostile or neutral.
It plays an alarm sound when the number of hostile or neutral pilots increases.

It also displays the names of those pilots that have no good standing and appeared new since the last reading.

Here is a description of the changes in commit b9570c16ca53678334435aec1ee205c441c65701:

  • Add the variable lastReadingPilotsWithNoGoodStanding to the app state.
  • Update lastReadingPilotsWithNoGoodStanding with every reading from the game client.
  • Compute pilotsWithNoGoodStanding: This is a bit different than the subsetOfUsersWithNoGoodStanding in the earlier version, because we now extract the pilot names from the UI elements. We need the names because we store them in the app state and also use them to display the new arrivals.
  • Use the previous state of lastReadingPilotsWithNoGoodStanding to compute the set of newPilotsWithNoGoodStanding.
  • Make the alarm/beep depend on newPilotsWithNoGoodStanding not being empty.

Made another change to improve the status text further:

(This is for cases where we want to derive more/other notifications from the status text, not directly related to the original idea where we just play an alarm sound on the local machine)

Now the status text looks like this:


To make it easier to see the sum of the changes today, here is another commit that goes directly from yesterdays version to the last version:

Thank’s again Viir! You are very fast.

I modified my version to work with a “bad” list rather than a “good” list, as I was getting random beeps while jumping with the scout. This also eliminated the beep on startup caused by the character seeing itself in local.

1 Like

Think it’s a good idea to have a real player’s name in this screenshot? :stuck_out_tongue:

One last thing… how could I make this dock back up at a citadel when the alarm goes off? :stuck_out_tongue:

Is any of this built into A-Bot already? Like, see neut, dock at citadel?

Let’s see, is this retreat behavior the same as here: Add some new features to Anomalies bot - #16 by BrianCorner ?

In this case, we could copy the code from that version.

Yes, looks like it is in the anomaly ratting bot here: https://catalog.botengine.org/49429507e4038ac44976a124d0305bd4d1d37def7830a5ed61a559a4f62359a0

Would this still work with multiple eve clients open?

Hello MrCurls!
Yes, you can use app 9b150ee958… with multiple clients. You would pick the game client by having the game client window in front at the time the app starts. When the app starts, it sees all game clients and selects the one that has the topmost window.

It then remembers that selection for the session, independent of later changes to the Z-order.
After the app has read from the game client at least once, you can leave the game client in the background.

Thanks for the reply, also I just wanted to know why the bot stores so much data? Roughly 200+mb per run which almost filled up my SSD.

It is not optimized for scenarios with less than one-gigabyte storage available. The botengine for Windows is a tool for developing bots. It is less optimized for only running a bot. Collecting training data is an essential part of development. Also, much of the storage use is for time travel functionality.

I get the need to store the data when running the bot, but if possible it would be more convenient if the files were deleted afterwards. The bot ended up taking over 45GB of data on my SSD. I am now manually deleting them after every run.