Why does the character just moves on game run w/o any force/constraint/initial velocity?


charactermove.rbxm (13.2 KB)

I suspect it has something to do with the collision physics. I am not entirely sure so I can’t go in depth on that but it’s the first thing that came up to me.

It looks as though there’s velocity in the baseplate.

The only other time I’ve seen something like this is with my vehicles when I’ve used conflicting collision groups - when I jump on my car with conflicting collision my character would slide off.

What’s the HipHeight at? (On mobile can’t check your file)

The Members discord server is experimenting with this.
So far it seems like if an R15 Humanoid’s HumanoidRootPart touches the ground (with HipHeight <= 0, or just landing upright for some reason like your character is), it will shoot off into the distance like a rocket. Your problem is currently an issue with HipHeight just not working?

Edit:
All of the parts in your character have CollisionGroupId == 1. Setting it to 0 on the HumanoidRootPart appears to fix the issue with HipHeight not working.

HipHeight is 1.35

@WingItMan theres no velocity in the baseplate, if you paste the character model into a new game and run the game, the character will go off

I think you and @Dysche are right to say that it has to do with the collision groups: just changing the HumanoidRootPart CollisionGroupId from 1 to 0 solves it… why? (@qqtt991, the other parts’ collision group doesn’t matter)

Seems like some bizarre implementation detail with collision groups.
If you open the collision groups editor for the place and make and delete a group it appears to fix the issue for the place…

My guess is the part belongs to an invalid (nonexistent) collision group so the humanoid gives up on applying hip height because there’s nothing for it to collide with or it’s just bailing on an edge case. By creating and removing a collision group it somehow snaps the part back into a valid state or fills in some hidden collision group data that the part was referring to.

1 Like

As @qqtt991 said this is actually the combination of two different bugs. The first one is that when the HumanoidRootPart touches the ground (as happens when the HipHeight property is 0), it causes it to shoot off like it has somewhere to be (seen in your video). The second one is that setting the CollisionGroupId of a Humanoid’s HumanoidRootPart to a number that hasn’t ever been touched in the place causes it to not respect the HipHeight property. This causes it to act like it’s 0, which is causing your problem.

To fix it, you should either properly create the Collision Group that the HumanoidRootPart belongs to or you should just change the CollisionGroupId to 0, which is the default. If no one else does, I’ll make some bug reports for both of these bugs Soon™ and hopefully we can get them fixed.

EDIT:
HipHeight bug is here: Setting the CollisionGroupId of a HumanoidRootPart to Non-Existant One Makes It Not Respect Hip Height

Issue with R15 models touching the ground is here: R15 Humanoids Display Bizarre Physics When Their HumanoidRootPart Touches the Ground

1 Like

You really don’t need to set groups by numbers; use the Collision Groups Editor on the Model Tab.

In a server script, use the SetPartCollisionGroup( part, groupName ) method to set a collision group.

Oh I cut it off here, but ‘ps’ refers to the PhysicsService:
local ps = game:GetService("PhysicsService")