User:Xor/Thoughts on movement

From Robowiki
Jump to navigation Jump to search

Introduction

Robocode is just another name of movement, and modern movement is just another name of risk management.

Source of risk

To manage risk you need to first find them out, and there are mainly four types of sources of risk in 1v1:

  • Hit Stats: A simple gun and a slow learning gun will probably fire at where they used to fire.
  • Flattener: A fast learning gun will probably fire at your most recent movement, and it's important to prelearn them to keep the hitrate relatively low.
  • Distancing: A random firing gun will hit you more at closed distance; At very closed distance, ram would also happen.
  • Bullet Shadow: Part of the risk from enemy firing can be nullified by your own bullet, as bullets can collide.

Risk estimation

Apart from the raw data you've collected from game and physics, it's rather important to estimate the real risk.

A hit from GuessFactor Targeting will probably indicate that the bins nearby will also have relatively high score, thus being there will make them learn faster, therefore increase their hitrate. The same thing happens to fast learning guns as well, but not that significant, as they decay data very fast.

Note that different guns may also aim from different positions, introducing deviation in their targeting.

Then we have:

Deducing future risk

Now we have the risk, it's time to choose how to move. But before that, we need to know the risk of each possible movement. Then we have: