@TheEmu
Unfortunately many of the fragment shaders calculate their output (pixel colour) in a way that ignores any color: and opacity:
that may have been specified in the .scn file and this is why your opacity: clause has no effect

There are two ways to fix the problem.

Method 1 - Render the affected part of the scene in a framebuffer and then render that framebuffer in the scene using a sprite.
           The shader is used in the framebuffer and the color: and opacity: clauses in the sprite.

Method 2 - Fix the shader.
           All fragment shaders should at some point assign a colour to the GLSL variable gl_FragColor.
           This is usually the last line of the shader, for example the refraction.fsh shader used in the bikini scene ends with
			gl_FragColor = vec4(texColor.rgb , texColor.a );
           but no matter where the assignment is done you can modify its effect either by modifying the line itself or by adding
           a statement that gets executed later that changes the value of gl_FragColor.
           You could just modify it to suit the needs of a particular scene, but that can rapidly lead to a having a lot of almost
           identical scene specific versions of a shader. It is better to be more general and add the line
			gl_FragColor = gl_FragColor * gl_Color;
           or equivalently the line
			gl_FragColor *= gl_Color;
           where gl_Color is a standard GLSL shader input that is set by iStripper to reflect the color: and opacity: clauses
           (defaulting to opaque white).
           It is most convenient to add this line either immediately after any existing assignment to gl_FragColor or as the
           last line of the shader's main routine - these are often the same place.

I recommend using method 2, its easier and makes the shader more generally useful.

P.S.
In the case of the refraction shader it would be slightly better to replace the existing assignment to gl_FragColor with
			gl_FragColor = texColor * gl_Color;

LATE EDIT: I originaly had a superfluous asterisk in the first suggested change to the shader, this is now corrected.
Also there is another work round that may be used, this being to modify the image to be more transparent, but this means that
you begin to accumulate multiple slightly different versions of the image. It is better to use the more general solution I outlined above.


@EverthangForever

Try this or similar framebuffer above the camera script using @TheEmu's fragment shader 
TheEmuLib = Library/Shaders/TheEmuLib.Emu_Ripple_RA.fsh

	framebuffer	{
			id	: ClipReflection
			source	: Clip
			allow	: table
			uniform	: u_Elapsed, float, 2.5	
		      //uniform	: Emu_Ripple_RA_edge_mode, vec4, 3, 3, 4, 4 // Hold R, Wrap A
			uniform	: Emu_Ripple_RA_edge_mode, vec4, 6, 6, 8, 8 // Hold R, Wrap A
		      //uniform	: Emu_Ripple_RA_Aa, vec4, 0.0050, 0, 0, 0
			uniform	: Emu_Ripple_RA_Aa, vec4, 0.0050, 0.0050, 0.0050, 0.0050
		      //uniform	: Emu_Ripple_RA_Ca, vec4, 15.0, 0, 0, 0
			uniform	: Emu_Ripple_RA_Ba, vec4, 3.14159265, 0, 0, 0
			uniform	: Emu_Ripple_RA_Ca, vec4, 3.14159265, 0, 0, 0
		      //uniform	: Emu_Ripple_RA_Fa, vec4, 2.0, 0, 0, 0
			uniform	: Emu_Ripple_RA_Fa, vec4, 2.0, 0, 0, 0
			uniform	: Emu_Ripple_RA_KK, vec4, 5.2, 0.0
			shader	: fragment,TheEmuLib = Library/Shaders/TheEmuLib.Emu_Ripple_RA.fsh
	}

Also apply this to the reflection clipsprite below camera node
by using clipspite parameter id: ClipReflection.
You can leave out the remmed out lines. They were just left in my mod of ET-Fractalgarden015Zoom.scn, to show changes

Edit:	Sorry @DrDoom I may have forgotten to upload my example of using @TheEmu's Library
	shaders in earlier updates: Here it is :-)
			http://scenes.virtuastripper.net/ETFractalGarden015Zoom.zip