New Humanoid Physics Controller - Beta

I only just tried the new controllers today. One thing I did notice, in the posts, was a request to allow the modification of the ‘float’ and ‘sink’ speed while in water.

This has been an issue with water for a long time, and though everyone says ‘you can fix this with a script’ there is something inconsistent with how the density of parts are calculated, and there is no script that can accurately fix the ‘sink/float’ issue for any given character.

Not to mention the other issues that can arise from changing character densities to try and get a non float, non sink situation.

So, not sure if this is something that could or will be addressed with these new controllers, as its not really a ‘movement’ issue, but rather a ‘density’ issue.

However, if there is a way to allow us to even ‘disable’ the calculation of density in water with these new controllers that would be great! Such as a way to say, I want to move in water the same way I would fly in air, with my density not causing me to float nor sink, but to rather just hover in place (and not hover as in remain a constant height above ground, but to remain in place, not sinking or rising)

Thanks.

2 Likes

I’m experiencing issues with manipulating walkspeed while using the new physics controller. Anyone else have the same issue?

1 Like

It’s the primary reason in why I am avoiding the new controller.

1 Like

Is there anyway to only use the “JumpController” of it. I only need to use it because of the momentum preservation so jumping on moving objects and such

Entering and then leaving the Physics state type breaks everything in your character if you have IK Controls. You fling into space going crazy, never to return.
You also have a certain “fly” state if you are using RigidityEnabled with CanCollide parts. It only ends when you enter certain states (like the Physics state)
NPCs attempting to use this new system simply become bugged and are unable to move. Upon further inspection you can see that the important parts of it (like the GroundController) are not present.
Also I am seeing strange situations where players lose the ability to move (sometimes it’s not all the way but you are noticeably slowed down), and sometimes random flinging occurs.
Keep in mind that I am using adaptive time stepping, and have CanCollide body parts so this may be the cause of the problem.

1 Like

Really glad the new physics controller resolves this issue completely:

(There is still a reoccuring issue of when you go up a slope at fast speeds and attempt to jump, clipping into the slope.)

However, an issue I noticed is that if you just so happen to land, hit, or trip anything in any certain way, even when spawning in from falling down, you’re very likely to permanently trip.

Aka, being stuck in a sort of physics state. You’re completely unable to move or recover. Adjusting the settings, disabling any other character scripts I made, and other random tid bits did not work.

Also, while messing around, apperently adjusting the “AssemblyLinearVelocity” on the root part on the client side of the character sends the character to flying mode? It also seems to pause or get stuck:


Also, as a result of messing up the AssemblyLinearVelocity with a sudden impulse, you’re actually able to control the character and basically make a makeshift flying mode.

You can see me having certain control over the flying, though the character “slowly” begins to drop down.

To replicate:

  1. Trip character by either tilting the character via rotate tool or simply flying out of a slope at high speed into an obstacle/tripping randomly.
  2. Go to Root part
  3. Set “AssemblyLinearVelocity” to a random high value, preferably on the Y value.
  4. Try moving.
5 Likes

@Seiiyo @Veesuuu
For now, changing the WalkSpeed property on the Humanoid will not work. You’ll need to adjust the BaseMoveSpeed on the ControllerManager instead.
If you want to change the speed individually for each controller (for example, have a faster walk speed and a slower climb speed), you can adjust the MoveSpeedFactor property on the Controller instances. This is multiplied by ControllerManager.BaseMoveSpeed to give you your final target speed.

1 Like

Found a bug, just enable shift lock and walk backward

8 Likes

hey @kleptonaut could you please reply to my previous post?

Also iam glad to tell you guys that it fixed knockback issues

Without new Controller

With the new Controller

Same VectorForce for both

2 Likes

Another bug, Humanoid.Died doenst trigger the first time you die

3 Likes

This should become doable, but not as an option on the GroundController, since that’s part of its core functionality.
As we expose more of the Humanoid state machine and floor sensors, there should be a few ways to achieve this. I think it will always be somewhat hacky as the behavior you’re looking for sounds fundamentally hacky (unless I’m misunderstanding?)

Why is the current way that the GroundController interacts with other floor parts not satisfactory?

3 Likes

can you elaborate here? What is the expected results for those two videos? What and where is the VectorForce you’re applying?

Hello,
To check this feature out, do I have to do more then
image

When I play it in Studio, half the time the player is falling in the air, stuck in the spawn part. Other times, if a ball rolls on me, I get stuck lying on the ground and cannot move.

Also clicking on Play seems to take longer for the game to start where you can move.

Thanks

4 Likes

You need to rename the Humanoid to “StarterHumanoid”, so the issues you are seeing are more likely to be an issue with the game you are in.

2 Likes

Current humanoid have problems with knockback, cause friction and it alsos active running state, that new Humanoid Physics Controller fix that issues, on both videos i use the same Vector force:

image

The new Humanoid Physics Controller have a better performance, nice job you guys made :slight_smile:

1 Like

It is not my game place, I again just created a new place with nothing in it, raised the spawn a few studs and it still gets stuck in the air…

I also renamed it as you mentioned, and it names it back to Humanoid

If I remove it, it works fine.

1 Like

Hello, Kleptonaut, do you have any thoughts on my post?

Thanks, I would like to check this feature out.

1 Like

Currently I cframe a clone of the object to the current CFrame of the object the player is standing on, disable collisions on the real object, and make the fake object invisible and anchored. I then use code to move the player along the platform.

Without the cloned object following the real object, the code to move the player along the platform WITH the current ground controller ends up moving the player forward since theres essentially 2 forces acting.

Not only that but Im looking to achieve a 99% reliable option for standing on moving platforms, which the custom code based solution ACHIEVES unlike the ground and air controller. (i could give you the code for the system if you would like)

What I would like added is an option for the ground controller to apply no movement/ inertia to the character while STANDING on moving physics parts.

anyways, ty for the reply!

@Lord_BradyRocks
The issue with not getting up after falling over is a known bug, fix coming soon.
Otherwise you have everything set up correctly, but I can’t reproduce the issue where you’re getting stuck. When this happens, what does the ControllerManager have the ActiveController property set to?

@LaAeroooo
If you are already using a custom script to move the player (and floor), why do you want to use the GroundController?
The GroundController achieves it’s behavior by treating it’s contact with the floor part just like any other part contact collision. Trying to have the character not physically move with the floor is not straight forward.

"a 99% reliable option for standing on moving platforms, which the custom code based solution ACHIEVES unlike the ground and air controller. "
This sounds like the main issue here. Did you attempt this before and run into an issue where the character was not reliably standing on the moving platform, thus leading you to write a script?

1 Like