Hi @Newbie_Coder,
Yes, it’s definitely possible though it requires a lot of manual work.
You will need to visit the terrain edges in your positions array and flatten/average them so both terrains match. At the same moment you will need to calculate the normals to take into account the triangles of the other terrain, to avoid getting lighting artifacts.
This thread is quite useful on that subject: Tiled terrain and normals - #6 by Leonidas
For generating different zone heights that’s possible. You could calculate the terrain UV coordinates to match a specific texture, I don’t have an example in mind for that.
Another way is to use a height based shader to do the same thing and mix between the various textures used. Here is a Three.js example that you can study for learning: