[Home]CrazyTracker

Robo Home | Changes | Preferences | AllPages

Bot Name

CrazyTracker

Author

Bayen

Extends

AdvancedRobot

What's special about it?

Well, it's a CRAZY mover and it TRACKS the enemy by locking onto it and implementing Linear Targeting

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

https://www.freewebs.com/bengame/CrazyTracker.zip

How competitive is it?

It's okay. It is pretty balanced (does well in Melee and 1-on-1) and it beats all the samples and all of my robots (plus my brothers' robots and my friends' robots). I'm not sure how it would hold up against a very good robot.

How does it move?

It does a randomized version of oscillating. It changes a constant in the code each time it gets hit by a bullet in order to stop Patternmatchers (the weakness of an oscillator) from locking onto its pattern.

How does it fire?

Linear Targeting

How does it dodge bullets?

See "How does it move?"

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

Well, it doesn't (yet)

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

Whichever it sees first.

What does it save between rounds and matches?

It saves a random number and a positive or negative 1. Actually, it doesn't really have to, but it might help to have the number be more randomized each round, instead of starting at 185 each time (whoops, did I just give away the starting point?)

Where did you get the name?

It moves CRAZY and it started out as TRACKfire

Can I use your code?

Go to CrazyTrackerSource

What's next for your robot?

I'm not sure. Could you look at my code and tell me?

Does it have any WhiteWhales?

Dookious

What other robot(s) is it based on?

TrackFire, although very little (if any) of the original code remains.


Comments, questions, feedback:

I need advice for this robot. It is doing very well (by my low standards, at least), but it still can't beat Freya(d'oh!). I am working on having better targeting systems, but is there anything else? Please have a look at my code at CrazyTrackerSource (I just cleaned it up a lot so it is easy to read). Thanks! --Bayen

One quick tip would be to not start out focusing on Freya... ;) That's a pretty good tank. What I did, and it worked out well, was start at the Beginner and then Intermediate level at the RobocodeRepository, and just download tanks and try to beat them. I'll try and give some more specific advice about your tank when I get a chance... -- Voidious

Well, beating Freya isn't a simple chore. While I can beat an older version of Freya in duels, It is rare that I am lucky enough to win a 100 round melee (with other Loki bots). As far as advice goes, I added some tips here, and you probably need to design a way to support multiple targeting methodologies and decide which of them to use, popularly referred to as a virtual gun array. You may want to set up the Roborumble@home system. In addition to helping process battles, it will download the bots that participate so you don't have to wade through the repository looking for them. If you enter your bot in the competition you will get a rating, and you can try testing against bots that are comperable. Early on it should be easy to improve your rating, and if you watch some battles against your 'problem bots' you'll see what opponents are doing to stop you from hitting them.
I spent a lot of time early on with Ugluk's design, redesigning to be more modular or modeled more clearly, and as a result I have a pretty good (imo) system that I can add new ideas to quickly. Many new features take about 20 minutes to code.
I have a personal policy to not read the Java code of any of my opponents, even the best ones, so I can't give you advice there, but if you show up on Ugluk's problem bot listings (or even the no-problem list) I'll have some congratulations or advice to dispense, for what it's worth. -- Martin

Thanks for the development tips. I changed my White Whale to Dookious I may lose to you 90% of the time now, Count Dookious, but soon it will only be 80%! BWAHAHAHAHA! --Bayen

Also, I really wasn't looking to know that I cant beat Freya (I already knew that), I wanted to know what was next for me to work on for my robot? Like, does my random oscillation work right, or is there any improvements on my targeting? (PS Thanks to Martin for the Virtual Guns idea, I am working on that now.) --Bayen

Just some small tips to gain some codesize: You can use Utils.normalRelativeAngle() (embedded in robocode.utils) instead of your own normalRelativeAngle(), calling setAdjustGunForRobotTurn(true) plus setAdjustRadarForGunTurn(true) during startup is enough to uncouple the radar, gun and tank completely for the whole battle, and you could make battleFieldWidth? and -Height general statics which are filled during startup. By the way, I also started robocoding with TrackFire, in my case merged into SpinBot. -- GrubbmGait

I have watched a 35-round meleebattle and a few one-on-one battles, and my prediction for CrazyTracker2? 2.6 is: rating 1550-1570 (ranking 80-100) in melee and 1510-1530 (ranking 270-290) in one-on-one. Your movement is hard to hit by simple targetters (HOT, LT and CT) and at your favourite (close) range your gun is at it best. -- GrubbmGait


Robo Home | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited December 28, 2005 13:17 EST by GrubbmGait (diff)
Search: