PC targeting
Pattern Continuer or Common Patterns
PC or CP is a targeting style that you save the last f ticks(You will decide it yourself). Then you will find the most common patterns.
As an example: velocityList {8, 8, 8, 6, 4, 2, 0, 0, 0, 0, 0, -2, -4, -2, 0, 0, 0, 0, 0, 1, 2, 3, 4}
The most common pattern here is 0, 0, 0, 0, 0. So you are going to fire directly at enemyPosition.
Now let's improve it. Using velocity or heading change is not a good idea so we will make these patterns PIF simulations or guess factors(GF) and get the kernel density. But still there is a problem. If a bot change it's movement it won't adapt very quickly and if the value of f is low it won't learn. With some segmentation it will return to a real learning gun. Still we can add data decay and some other improvements you have in your mind.
Advantages: The gun is learning. Easy to make.
Disadvantages: Flatteners Determining f's value. Determining the decay rate.
Note: I originally used n instead of f and found out this robot: N