Motor6D not listening to CurrentAngle since latest Roblox update

Not yet, no. We have a link to this post on the ticket, and we’ll try to reply when this gets fixed.

2 Likes

This bug seems to be network ownership specific. For example, this script in a model with 2 parts connected via Motor6D:

game.Players.ChildAdded:Wait()
local Player = game.Players:FindFirstChildOfClass("Player")
script.Parent.Part:SetNetworkOwner(Player)
print("ownership given to", Player)
script.Parent.Motor.DesiredAngle = 1

The player with network ownership will see everything work as normal. Any other players will see the two parts rapidly flicker between the motor being at angle 0 and angle 1 every time the two parts move. If the two parts are left untouched they will appear in their correct positions.

However its worth noting that in the example place I quickly put together the motor goes to the correct position on the server, whereas in the game I encountered this bug (a pop-up headlight on a car) the motor will never change from a current angle of 0 on the server unless the current angle property is changed directly by the server, even though the motor has both a non-zero max velocity and the correct desired angle. Motor6dbug.rbxl (19.4 KB)

2 Likes

Yeh i mentioned in my post when i first noticed it that it had to be network ownership linked. A very simple reason is that if you drop same model in the players character those functions will replicate on the server too without issue. There seems to be a mismatch with motor6d and Networkownership due to a recent change. Of which CurrentAngle only changes on the player with network ownership but never the server or other players which means if you had a server side script reading currentangle to check if its past a limit to play a sound for example it will never do that on even the player with network ownership unless that script is a local script.

We should have a fix for this enabled by the end of the week :slight_smile:

7 Likes

The fix should be live, let me know if you still encounter this issue!

1 Like

We are encountering issue with welds/motor6d/weldConstraints not updating Part1’s position locally when the Part0’s don’t move on the server but do move on the clients.

Yea I think it’s related unfortunately, reverting this fix as the decal bug is more prevalent.

Edit: reverted. sorry!

1 Like

I tried my test place out, just the truck and another car.
The fix you tried for the Motor6D seems to work, but it has become more ‘twitchy’ feeling.
I have the steer Script in my VehicleSeat (not a LocalScript as I want everyone in the game to see the movements properly) and the movement of the wheels while steering used to be really smooth but now seems a bit glitchy.
Occasionally when you try to steer the wheels lag behind and suddenly jump to their updated angle.
I also tried making the variables local but there was no difference in the movement.

1 Like

The replication is still not working from client → server

1 Like

kleptonaut mentioned they reverted the fix since it was messing with decals…

3 Likes

@kleptonaut @ContextLost Are there any updates with this issue? Would be nice to know.

2 Likes

Still working on it. Hope to have it fixed either next week or the week after, but I will post here when it is.

4 Likes

Thanks for the report! We’ve filed a ticket for this issue and we’ll follow up here when we have an update for you.

3 Likes

Amazing. Any news as of 27/09/2020?

2 Likes

Same question over here, are there any updates about the Motor6D fix? The ro-aviation community is severely affected by this.

2 Likes

Do you have an update for us yet?

Planes are still looking like UFO’s in my game, the landing gear doesn’t show up for other players and the jet engines aren’t rotating.

2 Likes

Thanks for everyone’s patience, a new fix has now been enabled!

4 Likes

I’m able to look at this again with the new fix, and I think I see the jittering you’re talking about. When holding A or D to turn, it looks fine, but quick inputs are missed, and the the truck might jump to the new position after something else moves. Is this what you’re experiencing?

There should be a way I can improve this on my end, so I will look into it.

However, I think the root of your issue is your combination of physically simulated constraints & parts, with the animation based Motor6Ds. Motor6Ds aren’t really intended to be controlled at this fidelity, and often show odd behavior when used in directly with other constraints (like the springs). What’s happeneing is the tiny angle changes aren’t enough to wake the parts that are intended to move. It still should work obviously, but you may have a better time using a HingeConstraint, or other system for controlling the wheels.
Also, you would be able to still use a LocalScript for immediate feedback to the player, while keeping consistent, optimized replication to the server.

3 Likes

Thank you so much! I’ve never been happier, literally.

1 Like

@kleptonaut It appears that the motor6D is still not working as it used to do for me.


Its still not replicating the changes to other players.

This has broken every single propeller, landing gear, jet engine, water propeller and many more game mechanics in my game for other players.

4 Likes