Releasing Character Physics Controllers

It still has a humanoid for clothing (and animation) but yes it is just welded to a capsule for collisions.

1 Like

I using on fresh project attached scripts and its not working, character just stays in place and can`t move.

1 Like

I would just set a base rate for (letā€™s say, 60fps, which is 0.01667 seconds, and then modulate the value for every physics step.

Itā€™s really unfortunate the amount of support shown to this cool system

Anyone wrote an animate script that works with this? Itā€™s my biggest barrier from using this. I am running into an issue where sometimes the run animation will play when the character is just standing still in a baseplate.

nothing infuriates me more than putting a project on hold waiting for a feature to come out thatā€™s seemingly finished (DFFlagControllerManagerUpDirectionProp) and then that just never coming out, this is unacceptable

9 Likes

This! I (sadly) changed how my entire gameā€™s movement system worked when I saw this feature while it was still in BETA and I loved the end result, but once they released it I couldnā€™t use it anymore and had to change my system a little bit again but havenā€™t went back to just using humanoids since I still want to use this.

Iā€™m just putting that project on hold until they release the next part :ā€‹/

I wish there was an option to make it work like the beta (have humanoids work with it).
I also found a few bugs with this system and provided files for them but I think my post got deleted or something and Iā€™m just using workarounds for now

4 Likes

Yeah I personally got so de-motivated I quit coding on roblox for a couple months. I put all this work into building a custom system around the new controllers just to have 50 billion bugs and no support.

5 Likes

if anyone runs into this problem where humanoid.running isnā€™t firing hereā€™s a fix u can add to the animate script.

-- modified running connection
Humanoid:GetPropertyChangedSignal("MoveDirection"):Connect(function()
	if Humanoid:GetState() == Enum.HumanoidStateType.Running then
		local speed = Humanoid.MoveDirection.Magnitude * Humanoid.WalkSpeed
		onRunning(speed)
	end
end)
Humanoid.StateChanged:Connect(function(oldState, newState)
	if newState == Enum.HumanoidStateType.Running then
		local speed = Humanoid.MoveDirection.Magnitude * Humanoid.WalkSpeed
		onRunning(speed)
	end
end)
--Humanoid.Running:connect(onRunning)
3 Likes

is this still worth trying i want to make npcs that do not have humanoid in them

1 Like

no I gave up on it, you are probably better off coding your own controller on top of humanoids

1 Like

this is really promising, but i donā€™t like how i canā€™t disable FacingDirection, since that behaviour works very differently to Humanoid. i hope there is or will be a way to fix this.

1 Like

Does anybody know if the ā€œUpDirectionā€ property actually does anything? Iā€™m currently trying to remake the Egomoose gravity controller and this property seems self-explanatory, but it any case it seems like it doesnā€™t influence the controller at all.

1 Like

updirection hasnā€™t been enabled yet, iā€™ve been trying to get info on if itā€™ll ever come out but instead itā€™s just been stuck in a limbo for almost a year

That really sucks. Looks like Iā€™m going to have to implement even more custom logic to get this thing to work :face_exhaling:

1 Like

How did you get your upvector logic to play nicely with controllermanager.MovingDirection? Iā€™ve tried so many different things and nothing seems to work correctly. Iā€™m holding ā€œWā€ for a majority of this video.
Rn Iā€™m assuming that I simply canā€™t rely on the Controller to apply the movement force correctly due to itā€™s UpVector essentially being a constant. In that case I would have to implement my own movement forces for when the UpVector isnā€™t normal, which kind of removes half the purpose of this implementation :cry:

iā€™m pretty sure i used physical constraints like AlignOrientation and maybe LinearVelocity; i started having issues where the character would either get positioned to nan or just wouldnā€™t stand still on angled surfaces

1 Like

I am also using both of those constraints, but the linear velocity only serves to act as a gravitational force in the game. Iā€™m assuming the linear velocity in your case both acts as the gravitational force and as the movement force.

1 Like

checking my place file again i have this configuration for a part welded to the rootpart; i was using vectorforces so i can have an uncapped speed but for the movement force you can probably use a linearvelocity
GravityCancellationā€™s force was set to Vector3.yAxis * (workspace.Gravity * -hitbox.AssemblyMass) and the gravity force was the same magnitude with whatever direction gravity was in

image

1 Like

Ah okay this config makes more sense and confirms my suspicions. Iā€™ll probably end up doing something similar until they revive the character controller by enabling the UpVector feature. I can only hope for an update early 2025.

1 Like