If your shadow is colored then that is the ambient light setting at work most likely. OR, you have set the translucency option on cast_shadow. As far as the shaodw being chopped in half, try a shadow nudge of 1.0. If that doesn't have the shadow floating off the ground, then send me a sample program that displays this issue. There is also a caster_plane nudge parameter which might have an affect. Read about that in the source.
If you don't mind me including your code with the shadow system then maybe I'll include it in the zip for future versions.
If you don't mind me including your code with the shadow system then maybe I'll include it in the zip for future versions.