There sits your problem. Contents properties are given by the first brush face in the map file. Texturing the top and the bottom faces doesn’t work anytime.
Open your map file in a text editor and look if the brush definition looks like this:
// brush 1
{
( 72 576 -8 ) ( 200 576 -8 ) ( 72 448 -8 ) liquids/clear_ripple1 0 0 0 0.500000 0.500000 0 281 0
( 80 576 -8 ) ( 80 448 -8 ) ( 80 448 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 208 576 -8 ) ( 80 576 -8 ) ( 80 576 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 208 448 -8 ) ( 208 576 -8 ) ( 208 576 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 80 448 -8 ) ( 208 448 -8 ) ( 208 448 -16 ) liquids/clear_ripple1 0 0 0 0.500000 0.500000 0 29 0
( 216 576 -80 ) ( 88 576 -80 ) ( 88 448 -80 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
}
}
This brush definition with two faces textured with a water shader give you functional water, because the first face has surfaceparm water.
But this brush definition give you an impenetrable block, you know why now:
// brush 1
{
( 72 576 -8 ) ( 200 576 -8 ) ( 72 448 -8 ) common/caulk 0 0 0 0.500000 0.500000 0 281 0
( 80 576 -8 ) ( 80 448 -8 ) ( 80 448 -16 ) liquids/clear_ripple1 0 0 0 0.500000 0.500000 0 29 0
( 208 576 -8 ) ( 80 576 -8 ) ( 80 576 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 208 448 -8 ) ( 208 576 -8 ) ( 208 576 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 80 448 -8 ) ( 208 448 -8 ) ( 208 448 -16 ) common/caulk 0 0 0 0.500000 0.500000 0 29 0
( 216 576 -80 ) ( 88 576 -80 ) ( 88 448 -80 ) liquids/clear_ripple1 0 0 0 0.500000 0.500000 0 29 0
}
}
To avoid that kind of problem, make a water shader and put it in common.shader.
textures/common/water_caulk
{
qer_trans 0.5
surfaceparm nodraw
surfaceparm nolightmap
surfaceparm nonsolid
surfaceparm trans
surfaceparm water
}
Create an image named water_caulk.tga and put it in textures/common.
Now, when making water brushes, select the whole brush and apply water_caulk on it, then texture the visible face only with the water shader.
// brush 1
{
( 72 576 -8 ) ( 200 576 -8 ) ( 72 448 -8 ) common/water_caulk 0 0 0 0.500000 0.500000 0 281 0
( 80 576 -8 ) ( 80 448 -8 ) ( 80 448 -16 ) liquids/clear_ripple1 0 0 0 0.500000 0.500000 0 29 0
( 208 576 -8 ) ( 80 576 -8 ) ( 80 576 -16 ) common/water_caulk 0 0 0 0.500000 0.500000 0 29 0
( 208 448 -8 ) ( 208 576 -8 ) ( 208 576 -16 ) common/water_caulk 0 0 0 0.500000 0.500000 0 29 0
( 80 448 -8 ) ( 208 448 -8 ) ( 208 448 -16 ) common/water_caulk 0 0 0 0.500000 0.500000 0 29 0
( 216 576 -80 ) ( 88 576 -80 ) ( 88 448 -80 ) common/water_caulk 0 0 0 0.500000 0.500000 0 29 0
}
}
Your water will ever works and no more ugly overdraw where textured faces meet.
This apply to all contents properties (lava, fog, slime…). Each needs its shader (lava_caulk, slime_caulk…)