It's not entirely impossible that one of the users, or I can see a particular bug in a shader code. But for this you'd need to find out first which shader it is. Disable all shaders, and then reactivate them one by one until the problem happens again.

A typical mistake I see often in shaders is not limiting the output range to 0..1 in shader model 1. This works with ATI, but not with nVidia.

It's also possible that the shader code itself contains no bug, but the problems arises from the engine. You're still using the A6 engine, which rendered level blocks with the old kernel from 2002. This kernel is not really suited for a today's high end game. Shaders on level blocks with A6 cause frequent state changes of the video hardware. I can imagine that this can produce a problem with extensive shaders. The only solution were then to remove the shaders from level blocks, or to use A7.