Hinge Door too heavy?

Hi,

I’ve been going back and forth trying to figure out how to fix this door. I made a hinger constraint door, and it opens from one side easily, but the other it’s very heavy. What causes this?

4 Likes

This happen if the door has Maseless off or if it’s touching the floor

2 Likes

Massless is enabled for every part in the door as for the floor I moved the door away and decreased the height of the floor and the issue still persists :confused:

2 Likes

Set the ActuatorType to Servo and change these settings if needed
image

2 Likes

I set AngularResponsive to 5 and it somewhat fixed the issue, the door is still a bit stiff and it doesn’t return back to position.

I think for that you would have to set the AngularSpeed

I’m still not getting the desired result :confused:

Here are my current settings and how it acts:


image

I had a similar problem in the past, and a fix for it was to make sure both of your attachments’ CFrame (middle-value) positions are the same. See below for context.

Screenshot 2024-02-25 214331

Weirdly enough, every hinge constraint starts off as very stiff for some unknown reason. Usually, waiting about 20-30 seconds will fix the stiff hinge issue. This could very well be a potential network-related issue.

Pushing a door when starting up a game:

Pushing a door 20-30 seconds later:

If none of these work, I would try turning off ‘CanCollide’ on the door frame so your door has a little more room to open and close smoothly.

Usually, this is why people prefer doors to have an open animation rather than physically opening a door with their torso. Hinge constraints can be very unreliable.

Hope this helps!

4 Likes

Hey!

Thanks for your detailed response. I do agree that hinge constraints can be unreliable, but being able to push a door open with the torso seems like such a neat feature to me. I’ll see if I can find anything about it because sadly the door is still heavy for me.

This is because of NetworkOwnership. The door isn’t heavy, it’s delayed since the server has network ownership. You could try this script inside the biggest part of your door that a player will touch:

script.Parent.Touched:Connect(function(b)
	
	local Player = game.Players:FindFirstChild(b.Parent.Name)
	if Player then
		if Player == script.Parent:GetNetworkOwner() then
			
		else
			script.Parent:SetNetworkOwner(Player)
		end
	end
end)

not sure if it works I didn’t test it

5 Likes

absolute god send this fixed it for me

Well there are some properties you can modify but mostly you gotta wait like 30 seconds after launching, for some reason it’s not stiff and doesn’t feel heavy after you wait a bit after launching in game.

Try uploading the game and seeing how the door behaves in the game itself. I remember in my game, the physics can be a little wonky while in studio causing doors to do just that. While in the game itself, they behave fine