# Walk upside-down, on walls, etc

## How do I…

I am trying to make a circular player sprite walk around a circular platform, sticking onto it throughout the whole process, and the player sprite should make a full 360 degrees, without falling off.

## What is the expected result

It should be able to walk on the circular platform, upside-down, everything.

## What is the actual result

I have tried a few behaviors and stuff, like the Magnetic one, but it should also be able to jump off the platform without being pulled back.

I understand what you are trying to say, To flip gravity upside down is how to do it.
If you are using the platformer behavior for your player, as for me, it is pretty hard, and you will have to use the flip gravity extension. If you know how to use the physics behavior, then it is very easy. Just turn the gravity input to a negative number.

Also, maybe use the physics behavior (which doesn’t work together with the Platformer behavior) that if on top, the gravity will be normal, if getting to the side, the gravity will reduce fast, then if upside down, the gravity will be negative

I love the concept, I just don’t know how to do it. A perfect circle would be easy. You could use something put object around either another object or a position. Think of it like a clock hand. Set the distance from the center or an object and then change the angle using something like the left and right key. Sort of like a ladder. A jump could be faked by changing the distance from the object or position.

An irregular shape would be more difficult. Maybe you could cast a few rays to detect the floor position. An angled ray ahead and one behind and a ray pointing down from the player for position. Yeah, I don’t know. But it sounds like fun.

Straight lines would be easy just follow point to point. Maybe hidden objects could be used as guides or way points for straight surfaces.

IDK. It’s sounds fun. Good luck.