Difference between revisions of "Watermelon"

From Robowiki
Jump to navigation Jump to search
m (→‎Firing: segmentation)
Line 39: Line 39:
  
 
[[Image:WatermelonDebugGraphics.png | left]]
 
[[Image:WatermelonDebugGraphics.png | left]]
Paints waves for enemy bullets and its own bullets, with brighter segments where the bins are fuller. Also marks predicted future positions.
+
Paints waves for enemy bullets and its own bullets, with brighter segments where the bins are fuller. Also marks precisely predicted future positions.
  
 
__NOTOC__
 
__NOTOC__

Revision as of 06:32, 10 June 2009

/Development

Watermelon
WatermelonStockPhoto.jpg
Author(s) Synapse
Extends AdvancedRobot
Targeting GuessFactor Targeting (traditional)
Movement Wave Surfing
Released 4 June 2009
Current Version 5
Download

Structure

It's built on a modular framework, coded pretty cleanly, but not good enough yet to be open source. Maybe once it's done something on the rumble that will change. Currently developing in Eclipse. Early on I used an educational IDE called BlueJ (its interface is a UML diagram, very pretty).

Movement

Uses Wave Surfing, implemented in a straightforward manner. To the extent that that's possible grumble grumble. I used Simonton's non-iterative Wall Smoothing code, and my own future position prediction. It took forever to realize that the future prediction needs to call the wall smoothing function for each imaginary tick, but I finally got it.

It kind of uses the Musashi Trick, by seeding the bins with a single hit at Guess Factor 0. The magnitude of the initial seed is such that the first real hit overrides it. Actual hits are smoothed, with a rolling average preferring new data to old.

Bot width is considered, averaging the danger from covered bins. There's no dive-in protection; bot width takes care of that.

Guess Factors are segmented by velocity and acceleration.

Firing

Guess Factor gun, segmented on velocity and acceleration. Up next: Automatic Segmentation.

Radar

Uses the same radar in melee and in 1v1 conflicts - turns the radar just past the furthest angle that the least recently seen bot could have reached since it was last spotted.

Debug Graphics

WatermelonDebugGraphics.png

Paints waves for enemy bullets and its own bullets, with brighter segments where the bins are fuller. Also marks precisely predicted future positions.