Found time to have a look at your revised code.
I'm wondering whether DBPro functionality has changed somewhere. I changed your code so that the cameras and their images were created
before texturing the water object. I also changed one texturing line which semed wrong. This now gives something resembling water:
`Setup Cameras
make camera 1
set camera range 1,1,crange
set camera to image 1,Img+(1-1),ImgSize,ImgSize
set camera fov 1,fov
backdrop off 1
make camera 2
set camera range 2,1,1500
set camera to image 2,Img+(2-1),ImgSize,ImgSize
set camera fov 2,fov
backdrop off 2
`Make Water plain
load image "Media/Waves.dds",Img+2
load image "Media/Fresnel.bmp",Img+3
load image "Media/WaterMask.bmp",Img+4
make object plain WaterObj,5000,5000
texture object WaterObj,0,Img
texture object WaterObj,1,Img+1
texture object WaterObj,2,Img+2
texture object WaterObj,3,Img+3 `1 ** why was this set to 1?
texture object WaterObj,4,Img+4
xrotate object WaterObj,270
load effect "FX/Water.fx",Fx,0
set object effect WaterObj,Fx
set object transparency WaterObj,1
A few things still need tweaking but at least you seem to have water now.
Edit I see you've fixed it too. You posted while I was messing about with my post.