Also for full-planet requirements, the OVH box running maps.earth has 64GB of RAM and 6 physical cores and is really struggling right now. Load average is about 40, most its CPU time is spent on the Valhalla service. Really enjoying watching the metrics right now :)
Regarding the route shapes I can only guess: we use an encoded polyline as default for a very compact response. You can either disable this or use our JavaScript library, or there is a new UI https://github.com/graphhopper/graphhopper-maps
Regarding routing parameters: our custom_model approach is more powerful than simple parameters and still not complicated: https://www.graphhopper.com/blog/2020/05/31/examples-for-cus... See e.g. the several bike examples and see how to get an world wide instance up and running: https://www.graphhopper.com/blog/2022/06/27/host-your-own-wo...
In recent master you can additionally control how elevation influences your route (e.g. prefer or avoid them entirely or steep sections or similar)