Character Walk on a Wall? (E.g Sonic running around a loop)

problem is that character loses walking friction past certain point(regardless of the character rotation), maximum walking plane angle is hard set to 90 degrees(or, 89.9999999…)