using complicated vector math
Stick to it, this kind of vector math is in reality much simpler than trigonometry (sin/cos/lengthdir_x...).
And it much more powerful too, angles are a code smell...
If you are writing a golf game some simple vector maths will go a very long way, simple things like vector adition, scaling, and slightly more complex operations like dot products. You don't need much more than that.
The way I remember dot products is they tell you how similar two angles are.
In more mathematical terms, they give you the cosine of the angle between the two vectors, multiplied by the vector length.
But with vector addition, scaling, length, and dot products you have absolutely all the tools to do golf game physics.