I am trying to automate the throw of a ball in a game in order to get "Excellent Throw".
To achieve an "Excellent" throw, you need to hit the center of the shrinking target circle when it's at its smallest size. The mechanics involve:
Target Circle: When you encounter a Pokémon, a target circle appears around it, which shrinks and expands. The size of this circle determines the throw bonus:
Large Circle: "Nice" throw
Medium Circle: "Great" throw
Small Circle: "Excellent" throw
Timing: The key to getting an "Excellent" throw is to release the Poké Ball when the target circle is at its smallest.
Accuracy: You need to aim for the center of the target circle to hit the Pokémon accurately.
Examples:
What I would normally do is:
1. Initialize game screen capture.
2. Detect and track the target circle's size.
3. Calculate the optimal release time when the circle is at its smallest.
4. Aim for the center of the circle.
5. Simulate the throw with appropriate speed and trajectory.
The thing is I would need to adjust these for each pokemon, since each one has a different circle. So I was wondering if ML would be preferable in this case scenario and more specifically if RL would be the more preferable choice.
The reward would be of course reading from the screen capture "Excellent!" after the throw.