Okay, I start a new file, make an object that jumps anytime is hits a material, duplicate it to see if it works on added objects. Then I add a new material on the face the object drops on and give it a different name and then I found something.
The collision sensor, when you have it on material checks the object with the material and not the individual faces. Individual faces would be nice because we can say, have different jump heights on different materials on the same object. As in checking the whole object to see if it has a material, it kind of makes itself not as much use because you can just give it a property and use that. A game I started that would be a maze game where you find the exit somehow the ray and material sensor refused to detect the material I tell it to detect even though when it’s set to property it works, though i’m not sure how that happened though.