Sphere rolling towards third person player when pushed

Hey guys,

I have a problem. In our game we have a third person character that has to push objects of different shapes. Everything works fine, but when I try to push an object with the shape of a sphere, the “ball” is rolling towards the character. As english isn’t my native language, please forgive if I am talking “around the bush”.

To be more specific: I can push the sphere, and as long as I keep pushing it slides over the floor in the desired direction, but it rotates exactly wrong, looking like it is rolling towards the character. I’ve played around a bit and found out, that if I push fast enough and suddenly change my direction, the ball even stops or rolls back in the opposite direction. It looks like it something with the angular momentum is wrong, but I can’t figure out how to solve this.

I checked different settings for friction, weight, I even checked if my character perhaps is too small / too big. I spent two hours trying out different settings in my game / level / map etc. but nothing seems to change anything on that.

What am I doing wrong? Do you need additional informations?

Regards,

Nick

Hey there, yes we would need the code/BP of what you are doing. Otherwise we can only guess that you are doing something wrong at some random place (:

Hey eXi,

as the problem has nothing to do with my blueprints, please make a simple testcase with the ThirdPersonExample. You just have to add a Sphere, apply a material (to better see the effect) and then check “simulalte physics”. If you push the sphere with the third person character, you should get the same result.

Hm ok, i see what you mean. This is indeed weird. I first thought this would come from the Sphere collision of the character, but also a box collision ended with the sphere spinning towards you. It looks like the player is not pushing it directly, but “stepping” onto it and like if you gently strife the sphere from top down to give it a back spin. Sadly i can not really help you here. I thought you were spinning the ball by hand (programming it).

So either you will need to wait for a staff guy (or someone who knows why this happens) or you will want to perform the push or at least the spin effect by hand. You could lock the axis for rotation and apply it yourself.

Thank you for your effort at least :slight_smile:

We gathered some ideas to apply a dirty fix to this (including yours now^^), but I will give it a few days, perhaps someone allready solved this problem by now. I would hate to interfere in a perfectly dýnamic scene at one point. I just doesn’t feel right for me :slight_smile:

Any news on this? Someone from the team perhaps? I know it doesn’t sound like a big deal, but its quite neccessary for our project, and since its a “bug” you can witness in the ThirdPersonExample, I think its quite interesting if there is a solution :slight_smile:

Hey … thanks to Omnicypher, who gave me the answer to another problem, I was able to find the problem making the balls rotate. The CharacterMovement Component has “Agent Physics”, where you can find not only the Push Factor that makes your Character stronger or weaker, but also a “Push Factor Point ZOffset”, wich is by default set to -0.75. While this is a fine idea for like kicking balls, its none for pushing balls. I don’t see the point in setting its default rating to -0.75, but well, setting this to 0 really smoothes our complete physics.

So this is resolved I think.

Thank you for putting this here. I was having the exact same “default” problem.