i use chasemode (
mq2nav) exclusively.
the issue under water usually happens when you have a bad mesh - if you have a mesh with layers above and below you - you can run into issues where
mq2nav picks what it thinks is the best route, but that might be a different route than you think. There are spots in regular non-lev non-underwater place this can happen because how dbg coded the spot - if you've ever seen your down spaz in pace recalculating as it goes - this is because there are layers right on top of each other / overlapping.
places like certain spots in cobalt scar you will be (as far as nav is concerned) floating in between two mesh layers, and based on how it determines where to go, it may decide the layer above you is the best route to take.
you can combat this by editing your mesh - either adding weight to areas or marking areas off etc