Perceptual melee radar
I tried building a perceptual bot a while ago. The hardest problem I found was how to make a melee radar without storing any data and without accessing getScannedRobotEvents().
A second radar event in the same tick overrides the first and the bot keeps changing targets. Didn´t find how to overcome this problem yet.
Not sure if this is what you are looking for, but you can use clearAllEvents() within the onScannedRobot(..) function. This clears all remaining scan events.
The problem is the last radar event overrides the others. With clearAllEvents() the first radar event overrides the others. In practice, both make perceptual bots change targets every tick in melee, and the performance is awful.
I was looking for something to lock onto the same target for many scans.
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page.
Return to Thread:Category talk:Perceptual Bots/Perceptual melee radar/reply (3).
With perceptual bots you have to fit all the logic inside a single scan event. So, "if you have no target" is quite hard to calculate, if not impossible, since you need to combine data from many scan events together.
The problem lies in scanning multiple bots in a single tick, resulting in many scan events, being triggered not in the order you want. Watch BotCatcher in melee and you will understand what is the problem I´m trying to solve.
Maybe I´ll try something like a width lock. The thinner the scan arc, the more likely the radar will scan the same bot, and only that bot, each tick.
Hmm, scan events are always ordered by distance (closest first) if you clear the remaining events you should end up with the closest target. Or do you need some other order for your scanned targets? By watching BotCatcher it turned out he is mostly going for the farthest target if he scan multiple opponents. I thought your goal was to find the closest target and lock it.