Heavy rigidbody moves easily after collision

I have an object with a rigidbody set to 100,000 mass. I have another object with a capsule collider. When the capsule collider moves and makes contact with the other object, this object with 100,000 mass moves around the scene like it’s an air-filled balloon.

This is the heaviest object in the scene. Nothing should be able to move this object.

What am I not understanding about rigidbodies and colliders?

EDIT: When driving around in the heavy object, TANK, if I run into a small curb, the tank flips over like it is filled with helium. Also, swinging around the turret, if the cannon collides with a building, the tank flips uncontrollably around in the air. All 3 objects (street, tank, buildings) use Mesh Colliders. Some buildings use box colliders.

Its because of drag force. When some force is applied on rigidbody it can move continuously without drag, like objects do in open space. Try to set drag to 1.

I don’t use force to move the turret.

There is your answer. If you are moving any rigidbody with Transform.position, Transform.Translate, Transform.Rotate or any of the transform functions then you override the physics engine calculations. The physics engine then moves everything else around in your scene to match up.

There are multiple set ups you could use to fix. Most logical to me would be giving the turret its own rigidbody. Attach it to the tank using a hinge joint. Rotate it by adding torque or force as appropriate. This will make your turret conform to the physics engine rules.

Try setting collision to continuous in the rigidbody of the heavy object (default is discrete).

How’s your framerate? If it’s low (like 20 or under) you might be getting interpenetration, and physics systems don’t like that.