Shooting Curve Flatteners
The highlighted comment was created in this revision.
I am testing my gun in Anti-Surfer Challenge. In the first 5 rounds I just get about %14 - %17 against Dookious. But when he opens his curve flattening. My hit rate falls to %5-%13(It changes continuously). Should a gun tuned against surfers be able to it a curve flattening bot?
I don't know how other bots solve the problem of targeting curve flatteners, but one possible solution would be to create an anti-flattener gun. Such a gun would give guess factors a negative weighing each time they were visited.
I thought about that too. The problem is many bots use different slices for different segments, different algorithms. I'm not sure about that.
Yeah, maybe there is a way to detect which slices/segments/algorithms the other bots use, and then the gun could be pretty strong. I am not sure either. I guess implementing it would be complicated.
Another important thing is that the bots surfs the waves in different ways. To have a %100 hit rate the bot should fire when the enemy bot is at the centre of the battlefield to remove the Wall Smoothing factor and there shouldn't be any other bullets in air(Multi-Wave Surfing).
There is a problem with this approach. Typically, you have about 10 sectors to shoot (if we divide guess factor range, by the bot body). Good curve flattener could be anywhere in a random fashion, even in just visited sector. So at best you increased your chances to 1/9 vs 1/10, in practice it is still 1/10. I have a random gun among list of available ones form my bots, often it gives the best result against curve flatteners. Sometimes, antiguess factor would lead you in wrong direction: I think DrussGT avoids GF=0, but with negative weight for visited spots, you soon will fire at GF=0 only, and unavoidably lose.
My strategy just fire randomly in this case, at least you get a chance to hit.