I know im a few years late to the party, but I figured out how to correspond the motor 6d’s with the updated attachment after the part size change.
Now, for a motor 6d there’s always 2 common patterns.
1, C1 of a motor 6d is always the CFRAME of a child of motor 6d’s parent (an attachment)
2, C0 of a motor 6d is always the CFRAME of motor 6d Part0’s child (an attachment within the child)
now, with these basic patterns we can create a data structure (which helps corresponds which attachment is which) like you proposed BEFORE the size change. The reason why its crucial that it is before is because of the way I create the data structure
How I do it is simply make conditions checking for the patterns I stated above for a part’s motor 6d. Then, I create a string value called “attachment0” and “attachment1” and parent it to the motor 6d. these values represent an attachment’s CFRAME which correlates to the motor 6d’s c0/c1.
here’s the code that needs to be executed before echo scales the attachments:
if not char:FindFirstChild("hasJointData") then
local hasJointData = Instance.new("StringValue",char)
hasJointData.Name = "hasJointData"
for _,v in next, char:GetChildren() do
if v:FindFirstChildWhichIsA("Motor6D") then
local attachment0Name = Instance.new("StringValue",v:FindFirstChildWhichIsA("Motor6D"))
attachment0Name.Name = "attachment0Name"
local attachment1Name = Instance.new("StringValue",v:FindFirstChildWhichIsA("Motor6D"))
attachment1Name.Name = "attachment1Name"
local mainJoint = v:FindFirstChildWhichIsA("Motor6D")
for _, v in next, v:FindFirstChildWhichIsA("Motor6D").Part0:GetChildren() do
if v:IsA("Attachment") then
if v.CFrame.Position == mainJoint.C0.Position then
attachment0Name.Value = v.Name
end
end
end
for _, v in next, mainJoint.Parent:GetChildren() do
if v:IsA("Attachment") then
if v.CFrame.Position == mainJoint.C1.Position then
attachment1Name.Value = v.Name
end
end
end
end
end
Sorry if its formatted bad,
also this solution was created under an hour so I know its pretty shabby
The problem is is that this is far from perfect, the motor 6d’s I think based on my few observations, its placed perfectly where it should, the problem with it is the motor6d placement is wrong. and its wrong because of the attachments because the motor 6d Cframe change is relative of the attachments, and since the attachments are placed wrong the motor 6d C0 and c1 is incorrect.
So we have to fix the attachments cframe…
we have to figure out how the attachments are placed on the character in order to figure out how to actually make the attachments cframe correct, since multiplying the cframe of an attachment by a factor will not work.