PricklyPear

From Robowiki
Jump to navigation Jump to search
PriclyPear
Author(s) CrazyBassoonist
Extends AdvancedRobot
Targeting GuessFactor Targeting/State Matching/Virtual Guns
Movement Wave Surfing
Download

Background Information

Bot Name
PricklyPear
Author
CrazyBassoonist
Extends
AdvancedRobot
What's special about it?
Its my only MegaBot so far.
Great, I want to try it. Where can I download it?
http://robocode-archive.strangeautomata.com/robots/oog.PricklyPear_1.0.6.jar
How competitive is it?
Top 100 in the general rumble.

Strategy

How does it move?
PricklyPear uses a slightly more polished version of AlphaDragon's surfing. It still goes with the strategy of selecting an angle instead of a direction to move at (which can make it interesting to watch), but it uses a VCS implementation of it without rolling. I put a lot of effort into strategy with this bot, so it has lots of useful features such as updating surfing data on BulletHitBullet events and ramming when the enemy is out of energy. However, what I really need to do is update the surfing itself which is fairly basic.
How does it fire?
PricklyPear uses twenty different buffers of three virtual guns, each of which has a different rolling speed and is ranked on the hit percentage using separate virtual guns. The idea behind this was that while PricklyPear does not have any guns designed to hit adaptive movement, it should be able to find a buffer that rolls at the same speed the enemy is adapting. The problem with this is that the third gun (V-Gun array of simple targeters) is very easy to dodge, and the GF gun and state matcher are a little too similar. All of the guns could probably do with a greater variety of segments.
It's three virtual guns are:
  • 1: A very simple GF gun that segments on lateral velocity and distance. It does not roll stats at all or have a time segment, making it work best against random movement.
  • 2: A Magic-esque state matcher segmented on lateral velocity, distance, and time.
  • 3: An array of simple virtual guns including HOT, LT, CT, and last-GF. This virtual gun array is segmented on distance and does not use rolling stats at all.
How does it dodge bullets?
Wave Surfing.
Is this robot Melee-capable?
No.
What does it save between rounds and matches?
All relevant statistics between rounds; nothing between matches.

Additional Information

Where did you get the name?
I made the colors first, and eventually ended up naming the robot after what they reminded me of.
Can I use your code?
RWPCL
What's next for your robot?
A host of things:
  • Update the basic guns. It has a pretty good system for picking which gun to use, but none of the targeting systems even go beyond the level of my micros by themselves.
  • Make the basic movement better. Sort of similar to the gun issue; it has a lot of fancy tricks but the basic algorithm behind rating the danger of spots could be much better.
  • Find a way to beat strong bots. I'm not quite sure if the issue is that the gun can't hit surfing due to the absense of any real anti-surfing targeting or that the movement lacks a flattener and is thus vulnerable to more advanced targeting, but
  • Beat the Bullet Shielders, which should be fairly simple.
Does it have any White Whales?
As stated before, PricklyPear gets inordinately low scores against good robots.

Credits

  • Everyone who has ever helped me or thought of an idea/concept that is used in this robot. For a complete list, find a list of RoboWiki users:-P