Congrats!:) Where you, Skotty, Skilgannon and AW take ideas, inspiration and strength for moving forward?:) I cannot find a way to improve Tomcat and Violet (my new Tomcat-based bot) is [more] worse and I can not get the ball rolling...
Normally I wouldn't want to lose third place, but I'll be rewriting my movement so maybe it won't happen.
1) According to the TCRM, you could make some huge improvements in targeting. I would suggest switching to GF KNN for the moment. I have some ideas on a new PIF based targeting strategy, but as far as current guns go, I think GF's are best.
2) Next, it appears from Tomcat's graphics that you have bugs in your bullet shadows where you place a new shadow over an old one (which could result in negative danger.)
3) Also, if you really want to improve ranking, you could probably squeeze some points out of classification schemes that are more complex and are enabled at certain hit rates. Personally, I like teh way you currently do it much better, but when I originally tried a similar method in pre-release versions of Gilgalad, my results were not very good. Regardless, I think you could gain some points by having hand selected classification schemes that included reverse wall distance, etc.
4) Maybe bullet power. Don't know how you do this, but you appear to fire with lower bullet power than I would usually use.
5) And of course, the real way to improve is probably bug hunting. A perfect score against HawkOnFire over 1000 rounds MUST be possible.
As regards a perfect score against HawkOnFire, I have been running some tests, and it appears that HowkOnFires shoots at angles quite distant from guess factor 0.
(From a 1000 round battle, GF = -100.0 means I failed to detect the wave when it was fired or couldn't find a match for some other reason.)
148Hit GF = -100.0
207Hit GF = 0.1636332953564261
89Hit GF = -0.11944245243219632
208Hit GF = -0.2328668375113637
75Hit GF = -100.0
84Hit GF = -0.12453026743165671
88Hit GF = -0.13356419636603006
273Hit GF = -100.0
0.1 seems to be a fairly large deviation from 0.0. Any thoughts? Anyone else see this before?
Yes, it's old and known "problem". I did not research it, but i think, that its Hawk's issue
Isn't it because HoT targeting shoots one turn after it calculates the angle?
both bots are perpendicular to each other on the x axis and have a distance of 100 - the calculated angle would be 90deg
bot one moves +8 and bot two -8
if bot one shoots the next turn with 90deg angle it would be 9deg difference to the center he targeted the last tick.
Of course this is the worst case and scales on distance and relative velocities to each other.
As far as I remember HOF doesn't use setAdjustGunForRobotTurn and also just spins its radar, so if you get a bad combo it isn't anywhere near GF0. I've seen as bad as GF+0.3. I'm sure you could improve your score by also dodging the bullet if it was fired at your last 8 locations and adjust the angle based on if they are turning and hadn't adjusted their gun for it yet this tick. Trouble is it will hurt against other bots :-)
HoF has an infinity lock, which slips quite frequently. And it looks like, he shoots whit in the run method and not in onScannedRobot(..) what makes the HoT angle even worse. Not sure about the setAdjustXX(..) but it would make it even more unstable.
As conclusion i would say there is no bot that shoots at GF0 all the time.
But even if you have perfect prediction of your opponents targeting, there is still the occasional ramming score due to bots spawning too close to each other in the beginning of a round, making perfect scores almost impossible against moving opponents.
Congratulations on the improvements in the latest version. My inspiration is mainly that I am still having fun. I still have a number of aspects to my robot that can be optimized further. As for unique innovative ideas, I often brainstorm by myself, but most of my ideas don't pan out. I do have one idea right now that I think is promising, but it will take some work so I probably won't get around to it for quite some time.
Thanks! The ideas are all around in the discussions on this wiki. When I 'get' something, and I like it, I try to apply it to my situation (like Precise_Intersection). Only this autumn I finally understood what a flattener is (just one remark from someone), and I am working on one now. The drive for the current change is plain simple: I wanted to be in the top-10 at the end of the year. Time is the limiting factor. The last couple of years I have only 'bursts' of activity, lasting a few weeks and after that a few months of silence. My drive is not to be the best, my drive is to be as good as possible doing it my way, with the limitations I choose. I am proud of GrubbmGrb, which is just a collection of simple concepts together with some specific ideas (like distance dependend drive-in protection). But it outperforms BasicGFSurfer which concepts are clearly better. Frankly, I am proud of all my bots, because I made them and they do more or less what I intended. Sometimes I am happy to run my client for a month, delivering 9000 battles a day. The point is, what do YOU want. Do you only want to be the best? Then you'll get frustrated that you are only nr 4. Do you want to be as good as possible? You already succeeded, beating 966 out of 970 opponents. My list of 'things to do' is still long, but when I have time and feel like it, I pick a thing from the list and try to do just that. It took me two years to have the best Dutch bot, it took me 5 years more to enter the top-10. I don't mind, I will be around next year and the year after.
To make it short: you decide what drives you. Good luck with finding inspiration.