How to let physics bodies penetrate each other slightly

In my game there are lots of characters that get stuck on each other all the time. I’d like to let them push past each other to help prevent that, but the physics engine doesnt seem to allow this behavior. My characters current get stuck like this a lot:

In order to prevent this I’ve tried messing with the SetMaxDepenetrationVelocity setting which at high and low values doesn’t seem to make any difference.

Does anyone have any suggestions?

You can “push” in calculated direction using AddForce or AddImpulse function, but better make cooldown on it or you are going to create a group of astronauts.

Use hit event or overlap event to do it (enable events in collision details).

Instead of pushing you could also detect “stuck” state, and make it ignore collision until overlap ends.

I’ll probably end up doing this, by replacing the collision sphere with an overlap one that simply pushes other spheres away it help stop characters getting stuck on each other. I’ll just check for this every tick, or set amount of time and base the pushing force off of the time between ticks to keep it consistent.

For anyone finding this, my idea to detect things being stuck, but not because of another character being directly in front (which is fine, im ok with traffic jams, just not with characters being stuck for no reason) is to divide the world into a grid and check whether the next grid along the path has any characters in it, if it doesnt for a set amount of time (like 2 seconds), I remove the collision to open up the traffic jam.