I have done 90% of my Multiboxing Bot for 1.12.1 (vanilla) but there is one last major problem, bots can't see and therefore can't dodge obstacles or manage line of sight...
I have a very simple idea to solve this problem, I want to use the center of my character (x1, y1, z1) and draw a circle arround my character if the coord (x1+?, y1+?, z2) has a z2 > z1+character_height then there is an obstacle and we have to move arround or if z2 < z1-10 there is a hole and we might want to avoid it.
For instance I think CTM use something similar to project (x, y) coords onto the terrain...
But if there are better ways to solve this problem I am open to suggestions !
EDIT: I just found the Intersect function inside the client that allow to cast a ray and have the intersection coordinate !