How do I make player slip on ice in topdown game?

Hello, I’m making a top-down game and I’m trying to make a level where there are patches of ice on the ground and you slip when you are on the ice. To do this I made an event that says that when you are on the ice your acceleration and deceleration are lowered. This kind of works but not entirely. For example, if you’re on the ice and you move up and then change direction and move down, you keep moving up for a second before you move down. This is what I want it to do. However, if you are walking up at full speed and then start moving right, you don’t slip in the upward direction. You just immediately start moving at a right angle (perpendicular) to the the angle you were previously moving in. Is there another way to make the character slip that would work better? Hopefully this explanation of what my problem isn’t too confusing.


I tried to reproduce your issue, and it behaves very differently when the character is near max speed and when he isn’t. :thinking:
It looks like a bug to me.

Here’s a lousy workaround for now:

Ok, thanks that’s a little better but the movement seems a bit choppy. I modified your events a bit to work with my game. The other problem now is that when you go on the ice you suddenly slow down.