Click or drag the screen to set the target location. Fun to play with it, right? To set the acceleration limit of the black circle, press “a” and enter the limit in pixels/second/second. To toggle velocity Verlet integration (which is used in the acceleration → velocity → position calculation), you can press "i". This will toggle between velocity Verlet and semi-implicit Euler. Default is Verlet. Also, there is an FPS counter, so the speed should be accurate. Even if it is on turbo mode or 60fps mode.
The idea for this physics problem was sparked in my mind, and I decided to solve it in scratch. I can’t believe it actually worked first try! Wow. Anyways, thanks for stopping by. 3/18/2026: I implemented velocity Verlet stepping (instead of the less accurate semi-implicit Euler stepping, which is still an option). Now it is the default simulation mode. Drastically improved main algorithm, it now get to the target point much faster and more efficiently! I calculate how aligned its velocity is to the direction of the target point, and use that to determine how much it should compensate for the tangential velocity. 3/22/2026: Improved the algorithm even further. Now, it uses a linear/jagged approximation of cosine using absolute value and modulo, which actually yields much more accurate final approach angle because cosine is much more lenient (due to its smooth hilltop shape at θ=0) when the angles are already very close to each other, while this linear approximation isn't.