Shouldn't you be getting the dot product of the Light Vector and the Surface Normal? In your node network, you're dotting Camera Vector with... itself. Which will net you 1 (I assume it feeds into the subsequent dot node as [1,1,1], which is... wrong). Also, mind that this will still return lit even if there's a cast…