Robo Home | Changes | Preferences | AllPages

Sub-pages: Version History

Bot Name






What's special about it?

Hmm, nothing really, but it has a pretty decent PatternMatcher gun.

Great, I want to try it. Where can I download it?


How competitive is it?

It's fairly competitive, but I'm sure that's largely because it is using the WaveSurfing from Dookious for its movement.

How does it move?

WaveSurfing (directly plugged in from Dookious)

How does it fire?

It uses a PatternMatcher, and tries to match segmentation data at fire-time, too. The first version used an "orbital" pattern matcher, measuring the turn rate in relation to what would be a perfectly "orbital" (staying perpendicular) turn rate at whatever distance, and even did path reconstruction with these relative orbital turn rates. (In this system, a bot circling you exactly is actually a turn rate of zero.)

After the first release, I've ditched the Orbital PatternMatcher, and gone back to the (original) vanilla PM version. It's the same in all regards except for the turn rate matching/reconstructions. As of 0.12, I've also added a second gun in a VirtualGuns array, which is a GuessFactor style gun that is fed by the PatternMatching aim of the PM gun.

How does it dodge bullets?


How does the melee strategy differ from one-on-one strategy?

The gun is melee aware, since I originally started the PM gun for melee; but the movement isn't, so she should still get soundly trounced.

How does it select a target to attack/avoid in melee?

The closest enemy.

What does it save between rounds and matches?

Everything between rounds, nothing between matches.

Where did you get the name?

It's named after Shaak Ti, a great Jedi Master.

Can I use your code?

Yes, feel free! It's released under the RWPCL. Like Dookious and CassiusClay, the gun and movement are pluggable.

What's next for your robot?

No idea...

Does it have any WhiteWhales?

No, it's too much of an experimental tank to care about WhiteWhales ;)

What other robot(s) is it based on?

It uses the movement from Dookious. As such, some of the credits I give for Dookious should be given here, too:

Comments, questions, feedback:

Basically just an experimental / fun tank, for now... Using the WaveSurfing of Dookious and a PatternMatching gun. I'll make a proper page tomorrow. -- Voidious

Well, it weighs in at 1931, and does relatively well against many good tanks. Not bad for a funky little PatternMatcher! -- Voidious

Hmm... I still think the orbital pattern matcher is a cool idea (still not sure if it's unique), and I'm pleased that it worked at all, but I will definitely be ditching it in the next version. If it measured the orbits around the wave closest to the enemy instead of around me (er, the tank), it could prove to be somewhat more effective against WaveSurfers than traditional PM, though, so I'll definitely keep this code around. -- Voidious

It's a pretty good gun for being a PM. Maybe even the best PM around? We should have a competition about that. The RRGC could be used. Or just the best ranking PM gun in the TargetingChallenge2K6. -- PEZ

You have quite different results than GrypRepetyf in the TargetingChallenge2K6. What do you do when you have no match, waiting for a match to come or use a 'backup'-gun. -- GrubbmGait

This version looks for a match until it finds one, even if it's just one frame's worth with no segmentation... if it doesn't even find that, it just shoots head on. It starts off looking for, say, 8 moves and matching segmentation data on the last move; if it doesn't find a match, it decrements the # of moves and tries again; once it gets past a "minimum moves" number with no match, it removes one of the pieces of segmentation and starts again at 8 moves. Once it's using zero segmentation data, it goes down to even just "1 move", instead of stopping at "minimum moves". I may be making this sound complicated, but it's really quite simple :)

Thanks for the input, guys. PEZ, I'm betting that Aleph and/or Crusader has a better PM gun, but I don't know for sure. The non-orbital version of Shaakious will be a big improvement, too, I think. (It's at least a couple points better in TC2K6/FastLearning? as of last night.) -- Voidious

Grubb, another thing that Shaakious does that is making a difference against surfers... Like I said, it tries to match segmentation data on the last scan. One of these pieces of segmentation data is a 0/1 boolean if Shaakious had fired within 2 ticks before that scan; this should segment pretty well on WaveSurfers' patterns. That's also the last piece of segmentation that she discards before going into a raw PatternMatching search. (I noticed Gryp's biggest problem, by far, is the surfers in TC2K6.) -- Voidious

Wow, this thing has rocketed to 2019 after 57 battles... I'm not sure if I'll be happy or angry if this baby outranks Dookious ;) And I need to get to bed, but I just have to watch for a few more minutes! (I won't be surprised at all if it sinks waaay back down...) -- Voidious

Simply impossible. With your current movement you just can't go 2000+ with a PM gun. Even a PM gun as good as this one. But checking the rankings I see you got to 1966. Which is bloody awesome. Great work! Be happy. =) -- PEZ

Thanks :) I am happy. I'm generally kinda surprised the weird PM/GF thing worked out... Then again, I wonder if a true GF gun with the same segmentations might work as well or better than the current (mutant) GF gun. Whatever the case, I think it's time to start tinkering with Dookious again... -- Voidious

Hey, congrats on the improvement! Soon your going to have two bots above me in the rankings. About your gun, a while ago I tried something similar (I think) to the gun that you describe here. I never got it to work very well though, so it's cool to see that I was going in the right direction anyway. --wcsv

Thanks, wcsv. Quick question - which part do you mean (that you were using similarly)? The matching of segmentation data at fire time in with the pattern, or the loading the aiming factors into a GuessFactor gun? Just curious... -- Voidious

I did various experiments with matching segmentation data at fire time, or the last n sets of segmentation data, or something like that. It was a while ago, i'll have to dig up the code to remember what I was doing. --wcsv

Robo Home | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited February 15, 2006 7:55 EST by Voidious (diff)