Roblox accessories not properly 'welding' on the client

When creating a rigged avatar on the client, accessories don’t properly weld to to the rig if the accessories are added after parenting to the workspace.

Example of the issue:
Client creates model
Client adds rigged body parts to model
Model is parented to workspace
Accessories are added to model

Performing the steps in this order causes the accessories to fall through the floor rather than attach to the rig.

However, if the steps are performed in the following order, the accessories have no trouble attaching:
Client creates model
Client adds rigged body parts to model
Accessories are added to model
Model is parented to workspace

After some testing I’ve figured out that accessories do attach to the rig so long as the rig isn’t anchored, however layered clothing doesn’t wrap around the rig unless the model is parented in the order shown in the second example.

Expected behavior

What I expect to happen is for accessories to attach to rigs after they’re parented to the workspace since the entire rig is client owned.

A private message is associated with this bug report

1 Like

Hi, do you have a repro case for this?

Yes I’ve posted it in the private message! It has a few private assets so I opted not to include it in the main post, but I can try making a repro place without them if you’d like!

If the accessories are not getting attached to the model, then calling BuildRigFromAttachments() can help. AddAccessory doesn’t actually attach from client (you have to run it server side), but there are certain things such as ancestry changing, simulation etc. that can cause accessories to attach on the client-side, which results in the discrepancy you’ve seen.

After some testing I’ve figured out that accessories do attach to the rig so long as the rig isn’t anchored, however layered clothing doesn’t wrap around the rig unless the model is parented in the order shown in the second example.

If the accessories are attached, 2 seconds may not be enough time for the layered clothing to deform properly. Increasing the time waiting between updates will solve that problem.

AddAccessory doesn’t actually attach from client (you have to run it server side)

If this is the case, it’s important the documentation reflects it because it’s never actually listed on the wiki.

If the accessories are attached, 2 seconds may not be enough time for the layered clothing to deform properly. Increasing the time waiting between updates will solve that problem.

This unfortunately doesn’t fix the issue, as I’ve set the duration to 20 seconds and the clothing still doesn’t deform, yet it deforms almost instantly on both the “WorkingClient” and “WorkingServer” examples. I’ve updated the place file to demonstrate this.

As for using BuildRigFromAttachments(), that seems to have done the trick, though I feel there should be more documentation on this, as I was scratching my head for days, and talking with many developers and it seems like nobody has ever heard of this.

I will talk to the documentation team to make sure it gets updated and let them know to add the BuildRigFromAttachments in the notes.

This unfortunately doesn’t fix the issue, as I’ve set the duration to 20 seconds and the clothing still doesn’t deform, yet it deforms almost instantly on both the “WorkingClient” and “WorkingServer” examples. I’ve updated the place file to demonstrate this.

Oops sorry, this is a bug that I have a fix for because the Pants1 accessory has an existing weld. You can wait for the fix to go live, or you can delete the existing weld under the accessory and lmk if that helps

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.

Can confirm this is fixed! Thanks again for the report.

2 Likes